②public class OperatorsAndExpressions {
void priorityOfBitOperator(){
int x = -67,y = 116,z = 78;
int d = a^b&c; 
System.out.println("d =" +d); 
}
pubilc static void main(String args[]){
OperatorsAndExpressions OperAndExp = new OperatorsAndExpressions();
OperAndExp.stringPlus();
}
}
(答案是-7,我不会算负数,我只会死板的往正数算,再说考试也没那么多时间,我算的是249,要是填空题(全国计算机2级java)的话,我写正数不会给扣分的吧????)
④求n!算法  (高手帮忙写一个出来好吗?跪谢了)⑤将1W元RMB按6种年利率存入银行。列出10年内,每年每种利率的存款余额。
import java.text.*;
import javax.awing.*;
public class Compoundlnterest
{ public static void main(String[] args)
  { final int STARTRATE = 10; 
    final int NRATES = 6;
    final int NYEARS = 10;
    double[] interestRate = new double[NRATES];
    for(int j = 0;j < interestRate.length;j++)                        //...
      interestRate[j] = (STARTRATE + j)/100.0;                        //...
    double[][]balance = new double[NYEARS][NRATES];    
    for(int j = 0;j < balance[0].length;j++)                          
    for(int i = 1;i < balance.length;i++)
    { for(int j = 0;j < balance[i].length;j++)
      { double oldBalance = balance[i - 1][j];
        double interest = oldBlance * interestRate[j];
        balance[i][j] = oldBlance + interest;
      }
    }
    NumberFormat formatter = NumberFormat.getPercentInstance();
    for(int j = 0;j < interestRate.length;j++)
    {System.out.print(" ");
     System.out.print(formatter.format(interestRate[j]));
    }
    System.out.print();
    formatter = NumberFormat.getCurrencyInstance();
    for(int i = 0;i < balance.length;i++)
    { for(int j = 0;j <balance[i].length;j++)
     { System.out.print(" ");
       System.out.print(formatter.format(balance[i][j]));
     }
     System.out.print();
    }
}
帮忙分析下每一句好吗?在“//”后面注释下,谢谢了
⑥class A{
        public static int size; //定义外部类局部变量
        public class Inner{     //声明内部类
            private int size;
       pubilc void doSomething(int y){
size++;         //访问局部变量
this.size++;    //访问内部类的成员变量
A.this.size++;  //访问外部类的成员变量
System.out.println(size+" "+this.size+" "+A.this.size);
    }
}
public void taskInner(){
    Inner k = new Inner();
    k.doSomething(8);
}
public static void main(String[] args){
    A i=new A();
            i.taskInner();
}
     }
后面一段是什么意思(倒数第二个public开始)?帮忙分析一下好吗?没弄清楚要什么结果?没弄懂...

解决方案 »

  1.   

    の 网上都有吧,就算没有原题也有相关的知识点,比如&代表什么,怎么运算,n!怎么求,再说楼主也该偶尔结结贴了
      

  2.   

    求n!public class TestN { /**
     * @param args
     */
    public static int qiuJieCheng(int i){
    int jieguo = 1;
    if(i != 0){
    jieguo = i*qiuJieCheng(i-1);
    }
    return jieguo;
    }
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int n = -1; //可以改为自己输入
    if(n < 0){
    System.out.println("请输入一个大于0的数...");
    }else if(n == 0){
    System.out.println("结果为: 0.");
    }else{
    System.out.println("结果为: "+qiuJieCheng(n));
    } }}
      

  3.   

    int x = -67,y = 116,z = 78; 
    int d = a^b&c; 
    上面是x,y,z,下面怎么成了a,b,c了?
      

  4.   

    public class NTest { public static long test(int n) {
    if(n<0) {
    System.out.print("请输入一个大于零的数");
    return -1;
    } else if((n==0||n==1)) {
    return 1;
    } else {
    return n*test(n-1);
    }
    }



    public static void main(String[] args) {
    System.out.print(test(10));
    }
      

  5.   

    int a = -67,b = 116,c = 78; 
    int d = a^b&c;按这个来吧.
    a:
      原码:1000 0000 0000 0000 0000 0000 0100 0011
      反码:1111 1111 1111 1111 1111 1111 1011 1100
      补码:1111 1111 1111 1111 1111 1111 1011 1101
    b:原码,反码,补码相同:116=64+32+16+4
      补码:0000 0000 0000 0000 0000 0000 0111 0100
    c:原码,反码,补码相同:78=64+8+4+2
      补码:0000 0000 0000 0000 0000 0000 0100 1110a^b&c:
      0000 0000 0000 0000 0000 0000 0111 0100
     &0000 0000 0000 0000 0000 0000 0100 1110
    ------------------------------------------
      0000 0000 0000 0000 0000 0000 0100 0100
     ^1111 1111 1111 1111 1111 1111 1011 1101
    ------------------------------------------
      1111 1111 1111 1111 1111 1111 1111 1001把结果的补码变因原码:
    反码:1111 1111 1111 1111 1111 1111 1111 1000
    原码:1000 0000 0000 0000 0000 0000 0000 0111
    所以结果是-7正数的原,反,补相同.
    负数的反码是原码除符号位外各位按位取反.负数的补码=反码+1.
      

  6.   

    double[] interestRate = new double[NRATES]; //定义了一个年利率数组,长度了6,每个元素是一个年利率 
    for(int j = 0;j < interestRate.length;j++)      //... 遍历这个年历数组
          interestRate[j] = (STARTRATE + j)/100.0;    //... 计算年利率的值,个人觉得这个题目应当会提示,年利率会有公式的,告诉你怎么计算出来?第二个题目:定义一个taskInner()方法,这个方法调用内部类并且为内部类赋值,你定义了内部类,当然就要为它赋值了、
    最后的public static void main(String[] args){ 
        A i=new A(); 
                i.taskInner(); 
    ,这个是主函数,定义了外部类的类变量A i,然后通过外部类就可以调用之前定义的方法taskInner,而这个方法会打印出你内部类所实现的功能~
      

  7.   

    2 2 1 打印结果是这个,
     pubilc void doSomething(int y){ 这个 y 变量定义的毫无意义啊·
      

  8.   

    感谢各大老爷们为小弟解说不过那个银行存款的还是不大理解,能不能每句都解释一下啊,楼上的那哥们说了几句,很明白...呵呵将1W元RMB按6种年利率存入银行。列出10年内,每年每种利率的存款余额。 
    import java.text.*; 
    import javax.awing.*; 
    public class Compoundlnterest 
    { public static void main(String[] args) 
      { final int STARTRATE = 10; 
        final int NRATES = 6; 
        final int NYEARS = 10; 
        double[] interestRate = new double[NRATES]; 
        for(int j = 0;j < interestRate.length;j++)                         
          interestRate[j] = (STARTRATE + j)/100.0;                         
        double[][]balance = new double[NYEARS][NRATES];    
        for(int j = 0;j < balance[0].length;j++)                          
        for(int i = 1;i < balance.length;i++) 
        { for(int j = 0;j < balance[i].length;j++) 
          { double oldBalance = balance[i - 1][j]; 
            double interest = oldBlance * interestRate[j]; 
            balance[i][j] = oldBlance + interest; 
          } 
        } 
        NumberFormat formatter = NumberFormat.getPercentInstance(); 
        for(int j = 0;j < interestRate.length;j++) 
        {System.out.print(" "); 
        System.out.print(formatter.format(interestRate[j])); 
        } 
        System.out.print(); 
        formatter = NumberFormat.getCurrencyInstance(); 
        for(int i = 0;i < balance.length;i++) 
        { for(int j = 0;j <balance[i].length;j++) 
        { System.out.print(" "); 
          System.out.print(formatter.format(balance[i][j])); 
        } 
        System.out.print(); 
        } 
    }  解完这题马上结贴....小小积分无所谓,再多都了结