最新回答 / 天启之魂
汗 上面说的有点问题 回复不能删除String s1 ="imooc"; 是讲s1指向堆内存中的字符串常量"imooc";而String s2=new String("imooc") 是在堆内存中开辟一个对象,对象中有一个变量记录的字符串是"imooc",s2指向这个对象
2015-09-21
已采纳回答 / 无动于衷
首先你要了解Override的范围!Overide只在当前类或子类中生效!第一个例子里,你重写的是Student类的compareTo()方法,那么当你用一个Student对象去调用这个方法时,执行的就是你Student里重写的方法,这个你应该是明白的。那么看方法中间的代码,return this.getId().compareTo(o.getId);这里的this.getId()是String类型的,而String类里的compareTo()方法并没有重写!它调用的是它自身的compareTo()方法(...
2015-09-21
已采纳回答 / 伊兮尘昔
1. 在执行速度方面的比较:StringBuilder > StringBuffer 2. StringBuffer与StringBuilder,他们是字符串变量,是可改变的对象,每当我们用它们对字符串做操作时,实际上是在一个对象上操作的,不像String一样创建一些对象进行操作,所以速度就快了。3. StringBuilder:线程非安全的 StringBuffer:线程安全的 当我们在字符串缓冲去被多个线程使用是,JVM不能保证StringBuilder的操作是安全的,虽然他...
2015-09-19
已采纳回答 / Java暗影
对于行数不确定的建议用while语句和数组实现。例如:<...code...>public void input(){Scanner in = new Scanner(System.in);//定义输入流对象int i = 0;//定义一个变量用于接收输入的值 int []nums = new int[20];/...
2015-09-18
最新回答 / qq_倔強人生_0
是可以转换但是你怎么写法是错误的,一个数据范围比较大的数转换到范围比较小的类型时是需要强制转换的int d=(int)Math.floor(a);
2015-09-17
已采纳回答 / _潇潇暮雨
凡是new出来的都是对象。你new了2次,当然会产生新的对象(开辟新的地址)。我们说字符串具有不变性,指的是字符串一旦声明不可改变(存储在字符串常量池中)。例如:<...code...>实际上...
2015-09-17