A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© winelx 中级黑马   /  2015-4-25 23:58  /  477 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package xx;//为class文件分目录
import xx.xx//导入包中的类
public class 类名{
       public static void main(String args[]){
}
}

准备工作:
jdk jre jvm gc idea pi
配置环境变量

变量名支持字母,数字,_和$,但是数字不能开头,区分大小写,长度无限制,支持中文,不能是关键字。

JAVA 强类型语言
变量必须声明类型以后,才能使用
Java数据类型:
基本类型(值)
boolean/char/byte/short/int/long/float/double
引用类型(地址(引用)——>内存区域(对象))
类 接口 数组 枚举 标注

类型 变量名【=值】;【】中可有可无

int a=5;a可变,变量5不可变,常数变量第一次出现必须带类型,以后不能带类型,带类型的叫变量声明。第一次赋值叫变量初始化。

二进制和十进制的转换
正数转换
0110 1101——>64+32+8+4+1=109
95——>95=64+16+8+4+2+1=95=0101 1111
负数转换
先取绝对值,然后按位取反,再加1(补码)
-7——>0000 0111——>1111 1000+1——>1111 1001
二进制转十进制,先减1,再按位取反,得到正数,前面加负号即可
1111 1111——>1111 1110——>0000 0001——>-1

类型可以转换(基本类型)
除了布尔,其他7种基本类型都可以转换
自动类型转换
1.    在表数范围内的常数可以自动转换
2.    表数范围小的可以自动转换表数范围大的
3.    封装类和对应的基本类型之间
4.    子类转换父类

强制类型转换(目标类型)
不能自动转换的,就强制转换

1 个回复

倒序浏览
[java] view plaincopy
public class TestType  
{  
    public static void main(String args[])  
    {   //赋值左右类型一定一致,否则经过类型转换  
        byte b1=2;  
        short s1=2;  
        int i =2;  
        long lo=2;  
        b1 = (byte)i;//强制类型转换运算符  
        i=b1;  
        double d1=1.0;  
        double d2=0.41;  
        System.out.println(d1-d2);  
        char c1='a';  
        //char c2=c1+1  
        char c3=98;  
        System.out.println(c1+1);//数98  
        System.out.println(c3);//字符  
        float f=2.0F;  
        System.out.println((byte)132);//取后8位  
    }  
}  

作业:
设计一个秒数换算程序(类似于倒计时)
[java] view plaincopy
import java.util.*;  
  
public class Miao  
{  
    public static void main(String args[])  
    {  
        int a;  
        int h;  
        int m;  
        int s;  
        String b;  
        boolean x=true;  
        do{  
        Scanner sc=new Scanner(System.in);  //开辟空间还是有点不清楚,一个相同的变量只要开辟一个空间吗  
        System.out.print("请输入秒数:");  
        a=sc.nextInt();  
        h=a/3600;  
        m=a%3600/60;  
        s=a%3600%60;  
        System.out.println(h+"小时"+m+"分"+s+"秒");  
        System.out.println("请问还要继续运算吗?");  
        System.out.println("继续请按y,退出请按n");  
        b=sc.next();         
        if(b.equals("y")){      //在这里我试了=,==,都没有equals好用,不知道是不是像这种情况都用equals好  
            x=true;     //这是赋值  
            }  
        else if(b.equals("n")){  
            x=false;    //这也是赋值  
            System.out.println("结束");  
        }  
        else  
        {  
            x=false;  
            System.out.println("输入有误!结束!");  
        }  
        }  
        while (x==true);        //这里才是对比,要注意,之前我只用了一个等于,导致程序死循环  
            //“=”是赋值,而“==”是对比,要区别和利用这两者关系  
    }  
}//要点:判断赋值相等时,尽量用equals。在do{}while()中,记住,while()里的是对比,不能填一个等
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马