java int 和Integer的区别以及程序运行结果

1、 int 和Integer的区别

a、int是java的基本数据类型;Integer是int提供的封装类;

b、int默认值是0;Integer默认是NULL;

c、int直接储存数据;Integer是对象,需要用一个引用指向对象;

d、声明int的变量不需要实例化,而声明Integer的变量需要实例化。

2、相等运算符与引用类型的变量区别

例1:  public  static  void  main (string []  args) {

   int    i=38;

   int    j=66;

   System.out.print("i=j");      //false

   System.out.print("i!=j");      //true

     }  //判断基本类型i和j的取值是否相等;

例2:public  static  void  main (string []  args) {  

    string   s1="abcd";    

  string   s2="abcd";     

   string   s3=new string("abcd");

string   s4=new string("abcd");

    System.out.printIn("s1=s2");      //true 同一字符串      

    System.out.printIn("s1=s3");      //false  可能是相同的字符串,但不是相同的对象 

System.out.printIn("s3=s4");      //false  可能是相同的字符串,但不是相同的对象

  System.out.printIn("s1.equals(s3)");      //true  不同的对象,相同的内容

    System.out.printIn("s4.equals(s3)");      //true  不同的对象,相同的内容  

  }  

 //判断对象以及内容是否相等;

例3:int    i=8;    

          int    j=8;

          Integer   s3=new Integer("8");    

          Integer   s4=new Integer("8");

          System.out.printIn("i==j");      //true 同一数字  

          System.out.printIn("s3.equals(i)");      //true  整数对象的值与整数相同         

          System.out.printIn("s3==s4");      //false  可能是相同的整数值,但不是相同的对象          

          System.out.printIn("s4.equals(s3)");      //true  不同的整数对象,相同的内容

总结:

1、基本类型的变量名是变量本身,只要俩个变量的值相同使用运算符==的取值就为真;

2、当变量与对象的值使用运算符==时,取值为假;

3、对象与对象的值使用运算符==时,取值为假;

4、对象是否包含变量使用s3.equals(i)时,取值为真;

5、对象是否包含对象使用s3.equals(i)时,取值为假。

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java语言程序设计课后答案 作业参考答案 习题一 4、如何建立和运行Java程序, 首先启动文本编辑器,如记事本、UltraEdit等,编辑程序代码,并以.Java作为文件 扩展名保存程序源代码;然后进入dos环境利用javac编译源程序,生成扩展名为.class的 字节码文件;再利用命令java运行字节码文件,得到程序的运行结果。在集成开发环境J builder、Eclipse下,可以完成程序的编辑、编译、调试及运行等所有任务。 5、 public class LikeJava { public static void main(String [] args) { System.out.println("I Like Java Very much!"); } } 习题二 5、 (1) 45 (2) false (3) 14 (4) 14 (5),6 (6) true (7) 12 9、 public class Volume { public static void main(String [] args) { double r=0,v=0; r=double.parseDouble(args[0]); v=4*3.14159/3*r*r*r; System.out.println("球体积为:"+v); } } 习题三 8、 public class Factorials { public static void main(String args[]) { int i, j; long s=0, k; i=1; do //外循环开始 { k = 1; j=1; do{//内循环开始 k = k * j; //内循环体 j++; }while(j<=i);//内循环结束 System.out.println(i + "!=" + k); s = s + k; i++; }while(i<=20); //外循环结束 System.out.println("Total sum=" + s); } } 10、 public class Num { public static void main(String[]args) { int i,j,k,n; for (n=100;n<1000;n++) { i=n/100; j=(n-i*100)/10; k=n%10; if (i*i*i+j*j*j+k*k*k==n) System.out.print(n+" "); } } } 习题四 5、 import java.util.Scanner; class Factor{ long fac(int m) {if(m==0""m==1)return 1; else return m*fac(m-1); } public static void main(String [] args) {int i,n; long sum=0; String s=""; Scanner input=new Scanner(System.in); System.out.print("Please input n: "); n=input.nextInt(); Factor f=new Factor(); for(i=1;i<=n;i++) { System.out.println(f.fac(i)); sum=sum+f.fac(i); s=s+i+"!+"; } System.out.println(s.substring(0,s.length()-1)+"="+sum); } } 习题五 2、 import java.io.*; public class YangHuiOk { public static void main (String args[]) throws IOException { int max,a[][],i,j; char x; System.out.print("请输入杨辉三角要显示的行数: "); x=(char)System.in.read(); max = Integer.parseInt(String.valueOf(x)); a=new int[max][]; for (i=0;i<max;i++) { a[i]=new int[i+1]; } a[0][0]=1; for (i=1;i<max;i++) { a[i][0]=1; a[i][a[i].length-1]=1; for (j=1;j<a[i].length-1;j++) { a[i][j]=a[i-1][j-1]+a[i-1][j]; } } for(i=0;i<max;i++) { //for(j=0;j<=max-i;j++) System.out
好的,我可以给你一个简单的Java程序示例来调用存储过程searchbook,并输出结果。 首先,你需要连接到数据库并获取一个CallableStatement对象,然后设置存储过程的参数,最后执行存储过程并处理结果。下面是一个简单的程序示例: ```java import java.sql.*; public class SearchBookDemo { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "password"; try (Connection conn = DriverManager.getConnection(url, username, password)) { // 设置存储过程调用语句 String sql = "{ call searchbook(?, ?) }"; CallableStatement stmt = conn.prepareCall(sql); // 设置参数 stmt.setString(1, "Java"); stmt.registerOutParameter(2, Types.INTEGER); // 执行存储过程 stmt.execute(); // 处理结果 int count = stmt.getInt(2); System.out.println("查询到 " + count + " 本 Java 书籍。"); } catch (SQLException e) { System.out.println(e.getMessage()); } } } ``` 在这个示例中,我们连接到一个名为mydatabase的MySQL数据库,然后调用名为searchbook的存储过程,该存储过程接受一个字符串参数和一个输出参数。我们设置输入参数为"Java",并使用registerOutParameter方法注册输出参数。然后,我们执行存储过程,并使用getInt方法获取输出参数的值。 请注意,你需要将上面的代码替换为你自己的数据库连接信息和存储过程名称和参数。同时,这个示例假设你已经在MySQL数据库中创建了名为searchbook的存储过程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值