Java考题

1、

    String tt;
    System.out.println(tt);

    提示语法错误,需要初始化,即为:

    String tt=null;
    System.out.println(tt);    

 

2 、

 

1  Java变量写法

Java变量,只能以字母,下划线、美元开头。

String  abc;  正确

String  _dkj;正确

String  $dks;正确

String  %abc;             // 此不正确,因为此时%为取摸运算,故不正确。

String   abc%;  //不正确,

String a%bc;  //不正确,因%为运算符。          *********************运算符不可以出现在变量名中,如+-*/%,无论位置,都不可以出现在变量中。

 

2 static常见错误

  static变量,只能定义在类下,不可以定义在类中的方法中,包括静态方法也不行

 

    public static  int amethod(){
        static int i=0;      //XXX       不可以定义在方法中
        i++;
        return i;
    }
   

public static void main(String[] args) {
        static int  e[]=new int[15];  //XXX    static也不可以出现在main中,即static不可以出现在方法中

}

 

public class StaticTest {
    static int  e[]=new int[15];
    public static void main(String[] args) {

     System.out.print(e[1]);  //为0,初始化为0

}

 

3 substring和concat错误,

        String foo="ABCDE";
        foo.substring(3);
        foo.concat("XYZ");
        System.out.println(foo);
       
输出为:ABCDE 

  foo.substring(3);为把foo截取后返回一个值,但foo没有变。

t2= foo.substring(3);  //返回的值为foo截取后的字符串,此为DE,为t2的值,但foo没有变。

System.out.println(t2+"  "+foo1);  //DE  ABCDE

 

concat 为把两个字符串拼接,但原字符串不改变,只是返回值为合成的值。

       String foo1="ABCDE";

        String t2=foo1.concat("XYZ");
        System.out.println(t2+"  "+foo1);// ABCDEXYZ  ABCDE

 

4

     public static void fun(StringBuffer x,StringBuffer y){
         x=x.append(y);
         y=x;
     }

        StringBuffer a=new StringBuffer("A");
        StringBuffer b=new StringBuffer("B");
        fun(a,b);
        System.out.println(a+","+b);  //AB,B

 

5  比较数据的对错

public class ClassA {
  Long val;
  public ClassA(Long i){
      val=i;
  }
}

 

public class StaticTest {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        Long a=new ClassA(10L).val;
        Long b=new ClassA(10L).val;
        Long c=b;
        Long x=10L;
        int y=10;
        
        System.out.println("a="+a+"  b="+b+" c="+c+" x="+x+" y="+y);
        System.out.println(a==b);
        System.out.println(a==c);
        System.out.println(x==a);
        System.out.println(y==b);
        System.out.println(x==y);
        System.out.println(y==c);
    }

 

//输出为:

a=10  b=10 c=10 x=10 y=10
true
true
true
}
 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值