黑马程序员技术交流社区
标题: 几道小小的题目一起和大家更进一步的了解 Java [打印本页]
作者: 黑马杨晨 时间: 2012-8-27 15:33
标题: 几道小小的题目一起和大家更进一步的了解 Java
本帖最后由 黑马杨晨 于 2012-8-27 15:37 编辑
1. 请问以下程序会输出什么?
public class Test {
public static void main(String[] args) {
Parent parent = new Parent();
Parent child = new Child();
System.out.println(parent.getName());
System.out.println(child.getName());
}
}
class Parent {
public static String getName() {
return "Parent ";
}
}
class Child extends Parent {
public static String getName() {
return "Child ";
}
}
2. 请问以下程序会输出什么?
public class Test {
public static void main(String[] args) {
for(int i = 0; i <= 10; i++)
Integer k = new Integer(i);
System.out.println( "Java Puzzlers ");
}
}
3. 请补全 i 的声明(要求:i 不允许为 float、double、Float 和 Double 类型)让其能输出“Hello World”。
public class Test {
public static void main(String[] args) {
________________; // 补全 i 的声明
if( i != i + 0) {
System.out.println( "Hello World ");
}
}
}
作者: 黑马杨晨 时间: 2012-8-27 15:34
4. 请问以下程序的输出结果是什么?
import java.math.BigInteger;
public class Test {
public static void main(String[] args) {
BigInteger one = new BigInteger( "1 ");
BigInteger two = new BigInteger( "2 ");
BigInteger three = new BigInteger( "3 ");
BigInteger sum = new BigInteger( "0 ");
sum.add(one);
sum.add(two);
sum.add(three);
System.out.println(sum.toString());
}
}
5. 请将下面程序中的空格补全(要求见程序中)
// 忽略 import 语句
public class Test {
public static void main(String[] args) {
List <String> list = new ArrayList <String> ();
list.add( "d ");
list.add( "c ");
list.add( "c ");
list.add( "a ");
list.add( "a ");
list.add( "b ");
list.add( "b ");
list = removeDuplicate(list);
// 输出的结果应是“d c a b ”
for(String str : list) {
System.out.print(str + " ");
}
}
/**
* 方法功能:移除 List 中重复的元素,并保持原有的顺序
*/
public static <T> List <T> removeDuplicate(List <T> list) {
// 把空格处完善
return ____________________________________;
}
}
作者: 黑马王建伟 时间: 2012-8-27 16:31
看到楼主发了好几个这样的帖子了,这样也不错,也可以让大家把知识点牢固下
作者: 全海波 时间: 2012-8-27 17:36
好几个都是错误的
作者: 郑彬 时间: 2012-8-27 17:55
不错没答案,没解释的题目
作者: 王德超 时间: 2012-8-29 17:05
不是吧,看了半天,没想出来
作者: 谭海鹏 时间: 2012-8-30 00:07
好好想想!
作者: 赵伟闯 时间: 2012-8-31 16:19
伤不起呀
作者: 陈莹 时间: 2012-8-31 16:33
就是有错误。。。
作者: 王金科 时间: 2012-8-31 16:45
好好想一想
作者: 赵伟闯 时间: 2012-8-31 17:26
黑马杨晨 发表于 2012-8-27 15:34 ![](static/image/common/back.gif)
4. 请问以下程序的输出结果是什么?
import java.math.BigInteger;
就一个小空格 也是出错呀 说实话 我运行了
作者: 庄星睿 时间: 2012-8-31 17:52
本帖最后由 庄星睿 于 2012-8-31 19:04 编辑
第一题,应该是全都输出Parent ,静态都看左边声明
第二题,应该编译失败,循环体只定义一条语句,“{}”可以省略,但如果如果只包含一条局部变量定义的语句
“{}”应该不能省略
第三题,String i = "123";
第四题,0,我查了API,这么说的 :BigInteger不可变的任意精度的整数。应该和String类差不多,那么结果还是0,不变,add方法相加后返回一个新的BigInteger对象
第五题:
{
if(list == null)
throw new NullPointerException("");
List<T> newlist= new ArrayList<>();
for(T t : list)
{
if(!newlist.contains(t))
{
newlist.add(t);
}
}
return newlist;
}
第三题 可以把 i 定义成一个字符串( str != str + 0 )的值肯定为true,呵呵。
作者: べ戀¢豬そ☆ 时间: 2012-9-1 09:50
第二题 是不是应该把Integer k=new Integer(i);用中括号括起来啊,里面在循环操作i。
作者: AngieFans85 时间: 2012-9-1 12:01
1 都是打印Parent.
2 打印11次Java Puzzlers.
3 public class Test {
public static void main(String[] args) {
String i = "i"; // 补全 i 的声明
if (i != i + 0) {
System.out.println("Hello World ");
}
}
}
4 打印0.
5 /**
* 方法功能:移除 List 中重复的元素,并保持原有的顺序
*/
public static <T> List<T> removeDuplicate(List<T> list) {
List<T> result = new ArrayList<T>();
Iterator<T> iterator = null;
T next = null;
// 把空格处完善
iterator = list.iterator();
while (iterator.hasNext()) {
next = iterator.next();
if (!result.contains(next)) {
result.add(next);
}
}
return result;
}
作者: AngieFans85 时间: 2012-9-1 12:07
べ戀¢豬そ☆ 发表于 2012-9-1 09:50 ![](static/image/common/back.gif)
第二题 是不是应该把Integer k=new Integer(i);用中括号括起来啊,里面在循环操作i。 ...
Integer k=new Integer(i);
这句代码根本是多余的,就是用来迷惑大家的呗,就是打印11次Java Puzzlers而已.
作者: べ戀¢豬そ☆ 时间: 2012-9-1 13:41
马镱洵 发表于 2012-9-1 12:07 ![](static/image/common/back.gif)
Integer k=new Integer(i);
这句代码根本是多余的,就是用来迷惑大家的呗,就是打印11次Java Puzzlers而 ...
要是括起来就只会打印一次了 不括起来就不对啊
作者: 夏天 时间: 2012-9-1 13:46
so easy! make a mark
作者: AngieFans85 时间: 2012-9-1 13:51
べ戀¢豬そ☆ 发表于 2012-9-1 13:41 ![](static/image/common/back.gif)
要是括起来就只会打印一次了 不括起来就不对啊
那倒是.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |