day02      

大纲:

变量

基本数据类型

数据类型之间的转换

1.变量:存数的,代词,指代的就是它所存的那个数
  1)声明:
      int a; //声明一个整型的变量,名为a
      int b,c,d; //声明三个整型的变量,名为b,c,d
  2)命名:
    2.1)只能由字母、数字、_和$符组成,
        并且不能以数字开头
    2.2)严格区分大小写
    2.3)不能使用关键字
    2.4)可以中文命名,但不建议
        建议"见名知意","驼峰命名法"
  3)初始化:第一次赋值
    3.1)声明的同时初始化:
          int a=250; //声明整型变量a并赋值为250
    3.2)先声明后初始化:
          int a; //声明整型变量a
          a=250; //给变量a赋值为250
  4)使用:
    4.1)变量的使用必须与数据类型匹配
          int a = 3.14; //编译错误,数据类型不匹配
    4.2)对变量的使用就是对它所存的数的使用
          int a=5; //声明整型变量a并赋值为5
          int b=a+10; //取出a的值5,加10后,再赋值给变量b
          a=a+10;     //取出a的值5,加10后,再赋值给变量a
                      //在a本身基础之上增10
          System.out.println(b); //输出变量b的值15
          System.out.println("b"); //b,双引号中的原样输出
    4.3)变量在用之前必须声明并初始化
          System.out.println(m); //编译错误,m未声明
          int m;
          System.out.println(m); //编译错误,m未初始化

2.基本数据类型:
  1)int:整型,4个字节,-21个多亿到21个多亿
    1.1)整数直接量默认为int型,但不能超出范围,
        超出范围则编译错误
    1.2)两个整数相除,结果还是整数,小数位无条件舍弃
    1.3)运算时超出范围则发生溢出,溢出是需要避免的
  2)long:长整型,8个字节,很大很大很大
    2.1)long型直接量,需要数字后加l或L
    2.2)若运算时有可能超出范围,建议在第1个数字后加L
    2.3)System.currentTimeMillis()可以获取
        自1970.1.1零时到此时此刻的毫秒数
  3)double:浮点型,8个字节,很大很大很大
    3.1)浮点数直接量默认为double型,表示float需加f或F
    3.2)浮点型参与运算时有可能会出现舍入误差,
        精确运算场合建议使用BigDecimal表示
  4)boolean:布尔型,1个字节
    4.1)只能存储true和false
  5)char:字符型,2个字节
    5.1)Java中的char采用Unicode字符集编码格式,
        一个字符(char)对应一个码(int)(0到65535之间),
        表现形式是char字符,但实质上是int码
    5.2)字符需放在单引号中,有且仅有一个
    5.3)特殊符号需通过转义符\来转义

3.基本类型间的转换:
  类型从小到大依次为:
    byte,short,int,long,float,double
          char
  1)两种方式:
    1.1)自动类型转换:从小类型到大类型
    1.2)强制类型转换:从大类型到小类型
          语法: (要转换为的类型)变量
          强转有可能会溢出或丢失精度
  2)两点规则:
    2.1)整数直接量可以直接赋值给byte,short,char,
        但不能超出范围
    2.2)byte,short,char型数据参与运算时,
        先一律转为int再运算

4.Scanner的用法:
  1)在package下:
      import java.util.Scanner;
  2)在main方法中:
      Scanner scan = new Scanner(System.in);
  3)在第2步之下:
      System.out.println("请输入年龄:");
      int age = scan.nextInt();
      System.out.println("请输入价格:");
      double price = scan.nextDouble();

double的缺点(计算结果可能有偏差):
double a=3.0,b=2.9;
System.out.println(a-b); //0.10000000000000009
                         //0.1

double a=6.0,b=4.9;
System.out.println(a-b); //1.09999999999999996
                         //1.1

int的缺点:(2147483647+1后会溢出,溢出不是错,是一个不好的现象,需要避免)
int balance = 2147483647;
balance = balance+1;
-2147483648===========+1后
-2147483647===========+1+1后
-2147483646===========+1+2后

1G=1024M(兆)
1M=1024KB(千字节)
1KB=1024B(字节)
1B=8Bit(位)

1G=1024*1024*1024字节----1073741824字节

帕斯卡命名法: Score,MyScore,MyJavaScore
驼峰命名法:   score,myScore,myJavaScore

package day02;

//数据类型的演示
public class DataTypeDemo {
public static void main(String[] args) { /*
//基本类型间的转换
int a = 5;
long b = a; //自动类型转换
int c = (int)b; //强制类型转换 long d = 5; //自动类型转换
double e = 5; //自动类型转换 long f = 10000000000L;
int g = (int)f;
System.out.println(g); //强转有可能会溢出 double h = 45.987654;
int i = (int)h;
System.out.println(i); //强转有可能会丢失精度 byte b1 = 5;
byte b2 = 6;
byte b3 = (byte)(b1+b2); System.out.println(2+2); //4
System.out.println('2'+'2'); //100,'2'的码50加上'2'的码50
*/ /*
//5.char:字符型,2个字节
char c1 = '男';
char c2 = 'm';
char c3 = '6';
char c4 = ' ';
//char c5 = ''; //编译错误,必须有字符
//char c6 = '男性'; //编译错误,只能有一个字符
//char c7 = 男; //编译错误,必须放在单引号中 char c8 = 65; //必须在0到65535之间
System.out.println(c8); //A char c9 = '\\';
System.out.println(c9);
*/ /*
//4.boolean:布尔型,1个字节,只能取值为true和false
boolean a = true; //true为布尔型直接量
boolean b = false;
//boolean c = 25; //编译错误,数据类型不匹配
*/ /*
//3.double:浮点型,8个字节,很大很大很大
double pi = 3.14159; //3.14159为浮点数直接量,默认double型
float f = 3.14159F; //float型直接量需在数字后加f或F double a=3.0,b=2.9;
System.out.println(a-b); //0.10000000000000009
*/ /*
//2.long:长整型,8个字节,很大很大很大
long a = 250L; //250L为长整型直接量
//long b = 10000000000; //编译错误,100亿默认为int型,但超出范围了
long c = 10000000000L; long d = 1000000000*2*10L;
System.out.println(d); //200亿
long e = 1000000000*3*10L;
System.out.println(e); //溢出了
long f = 1000000000L*3*10;
System.out.println(f); //300亿 //获取自1970.1.1零时到此时此刻的毫秒数
long g = System.currentTimeMillis();
System.out.println(g);
*/ /*
//1.int:整型,4个字节,-21个多亿到21个多亿
int a = 250; //250为整数直接量,默认为int型
//int b = 10000000000; //编译错误,100亿默认为int型,但超出范围了 System.out.println(5/2); //2
System.out.println(2/5); //0
System.out.println(5/2.0); //2.5 int b = 2147483647;
b=b+1;
System.out.println(b); //溢出为-2147483648
*/ }
}
package day02;
//变量的演示
public class VarDemo {
public static void main(String[] args) { /*
//4.变量的命名:
int a1,a_5$,_5a,$6;
//int a*b; //编译错误,不能包含*
//int 1a; //编译错误,不能以数字开头
int a=5;
//System.out.println(A); //编译错误,严格区分大小写
//int class; //编译错误,不能使用关键字
int 年龄; //正确,但不建议
int age; //建议"见名知意"
int score,myScore,myJavaScore; //建议"驼峰命名法"
*/
/*
//3.变量的使用:
//int a = 3.14; //编译错误,数据类型不匹配
int b = 5; //声明整型变量b并赋值为5
b = b+10; //取出b的值5,加10后,再赋值给b
System.out.println(b); //输出变量b的值为15
System.out.println("b"); //输出b,双引号中的原样输出
//System.out.println(m); //编译错误,m未声明
int m;
//System.out.println(m); //编译错误,m未初始化
*/
/*
//2.变量的初始化:第一次赋值
int a = 250; //声明整型变量a并赋值为250
int b; //声明整型变量b
b = 250; //给变量b赋值为250
*/
/*
//1.变量的声明:
int a; //声明一个整型的变量,名为a
int b,c,d; //声明三个整型的变量,名为b,c,d
*/
}
}
package day02;
import java.util.Scanner; //1.
//Scanner用法的演示
public class ScannerDemo {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in); //2.
System.out.println("请输入年龄:");
int age = scan.nextInt(); //3.
System.out.println("请输入价格:");
double price = scan.nextDouble(); System.out.println(age);
System.out.println(price);
}
}

day02-java的更多相关文章

  1. day02 Java基础

    1.Java中的关键字都是小写的. 2.Java中的关键字 3.Java中的注释分为:单行注释.多行注释.文档注释 文档注释将被javadoc工具解析生成一个说明书. 4.Java中的常量分为字面值常 ...

  2. day02<Java语言基础+>

    Java语言基础(常量的概述和使用) Java语言基础(进制概述和二,八,十六进制图解) Java语言基础(不同进制数据的表现形式) Java语言基础(任意进制到十进制的转换图解) Java语言基础( ...

  3. day02 java学习

    Java三大版本 Write once,Run anywhere. (基于JVM虚拟机) JavaSE 标准版 JavaME 嵌入式开发 JavaEE 企业级开发 Java三大名词 JDK Java开 ...

  4. Java学习day02

    day02-课堂笔记 1.打开DOS命令窗口,执行java HelloWorld,执行原理? * java.exe命令会启动JVM * JVM启动之后会启动类加载器ClassLoader * Clas ...

  5. JAVASE02-Unit02: 正则表达式 、 Object 、 包装类

    正则表达式 . Object . 包装类 字符串支持正则表达式的方法一: package day02; /** * 字符串支持正则表达式的方法一: * boolean matches(String r ...

  6. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  7. 2017-2018-1 JAVA实验站 冲刺 day02

    2017-2018-1 JAVA实验站 冲刺 day02 各个成员今日完成的任务 小组成员 今日工作 完成进度 张韵琪 写博客.进行工作总结 100% 齐力锋 找背景音乐.开始界面图片.按钮图片.按钮 ...

  8. Java基础毕向东day02

    1. 常量 null 等特殊 2.标识符 数字-字母-下划线,数字不能开头 3.二进制 1> 二进制计算方法. 2>常用二进制. 1        1      0       0   1 ...

  9. Java历程-初学篇 Day02变量,数据类型和运算符

    一,数据类型 1,基础数据类型 整型 byte short int long 浮点型 float double 字符型 char 布尔类型 boolean 2,引用类型 String 字符串型 二,变 ...

  10. java入门-day02

    变量和数据类型 Java是强类型语言.数据在计算之前一定要有确定的类型 基本数据类型;   byte /short /int /long/(分别占1-4字节) float(4字节,精度6-7位)    ...

随机推荐

  1. 矢量图标转成16*16大小的SVG格式

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:一一链接:http://www.zhihu.com/question/32233782/answer/68629385来源:知 ...

  2. lucene 3.0.2 + 多文件夹微博数据(时间,微博)构建索引

    package lia.meetlucene; import java.io.File; import java.io.IOException; import java.util.LinkedList ...

  3. hello world 驱动程序编写

    操作系统课程设计选题  驱动程序的编写和安装. 经过一天多的努力,终于把我的第一个驱动程序模块成功编写并实现插入内核和移除,在这里把过程记录下来方便以后查看,也给其他为之困扰的朋友一个建议. 环境: ...

  4. lastLogon和lastLogonTimestamp的区别

    如何得到用户最近一次登陆域的时间?在Windows2003域中有2个属性:lastLogon和lastLogonTimestamp,那么这2个属性到底有什么作用呢? lastLogon属性实时更新用户 ...

  5. Java静态块学习

    静态块是类里面的构造器,对象有构造器那么类也有构造器,类里面的构造器叫做初始化方法.也就是new一个对象他会经过一个构造器.加载一个类,也有被初始化的一片代码,这个就称之为静态块.一个类里面可以有很多 ...

  6. discuz怎么根据连接知道调用的是什么模板页面

    其实不怎么难,基本都可以看出discuz是怎么样调用模板页面的 这个是论坛的帖子的列表页,看到url就可以看出是forum目录下的forumdisplay这个模板,forumdisplay.html这 ...

  7. ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data...

    ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data... 2012-07-18 ...

  8. WampServer 在 httpd.conf 中配置多站点 (IP 配置法:不用每次修改 hosts 文件 + 域名配置法 )

    因为要用 ThinkPHP 的当前最新版本 3.2.2,对应要求 PHP 的版本要高于 5.3.0,所以安装了 WampServer 2.2 ( Apache 2.2.21,PHP 5.3.10,My ...

  9. jpush极光推送知识点总结

    1.jpushClient.sendPush(pushpayLoad):是发送推送的主要方法 2.pushpayload是具体推送消息.推送对象范围的封装 3.jpushClient.sendPush ...

  10. 使用fsck修复文件系统错误

    1.问题描述 服务器maint_samba   由于服务器maint_samba (debian操作系统)没有正常关机,在重新启动过程中/dev/sdb1出现文件系统错误,需要手动使用fsck进行扫描 ...