粗糙笔记不喜勿喷

Java 8大基本类型

第一类:逻辑型(boolean)

1.boolean类型只存在true(真),false(假)两种形式

例: boolean a=true; boolean b=false;

第二类:文本型(char)

字符常量通常用单引号括起来(可以是中文)java采用unicode编码,每个字符占两个字节,

例: char a=’a’;char b=’你’;

第三类:整数型(byte、short、int、long)

byte: 8 位,用于表示最小数据单位,如文件中数据,-128~127

short: 16 位,很少用 从-32768到32767

int: 32 位、最常用,-2^31-1~2^31 (21 亿) 从-2147483648,到2147483647共10位

long: 64 位、次常用 从-9223372036854775808到9223372036854775807共19位

第四类:浮点型(float、double)

float: 32 位,后缀 F 或 f,1 位符号位,8 位指数,23 位有效尾数

double: 64 位,最常用,后缀 D 或 d,1 位符号位,11 位指数,52 位有效尾

注意:在数学中0到1有无数个浮点数;而计算机是离散的,所以表示的时候有误差,计算机用精度(小数点后几位来表示正确),比较浮点数时a==0.1是不合适的,应该a-0.1==0;如果a是0.1,则即使有误差 a-0.1==0因为a和0.1都被表示为一个有误差的计算机二进制

特别说明(String)

String不是基本类型而是引用类型

类型转换

自动转换:byte–>short–>int–>long–>float–>double

注意:小可转大,大转小会失去精度

String转换成int或者double

int 或 Integer num = Integer.parseInt(String str);
double 或 Double num = Double.parseDouble(String str);

整数 int 转换成字串 String

int a=9;
String s = String.valueOf(a);

Java中的变量

类型 变量名称 = 值

可变变量

class TestVeriable{
public static void main(String args[]){
int i1=10;
short s1=2;
int i2 = i1+s1; float f1=12.5F;
float f2=f1+i2; long l=12L;
float f3 = l; char c1= 'a';
char c2= 'A';
int i3 = c1+1;
int i4= c2+1; //short、byte、char之间的运算结果都被自动转化为int类型
short ss1=12;
byte bb1= 1;
char cc1='a';
int ii1=ss1+bb1+cc1; }
}

不可变变量(final)

final 类型 变量名称 = 值
public class one {
public static void main(String[] args) {
final int a = 1;
a = 2;//因a不可变所以这里会报错
} }

类变量(private)

private 类型 变量名称 = 值
public class one {
private int two = 1; //只能在这个类中使用
public static void main(String[] args) {
//此处申明会private报错
} }

Java循环

while循环

先循环再判断


import java.util.*;
public class test{
public static void main(String[]args){
Scanner a=new Scanner(System.in);//创建扫描器(可输入多个值空格隔开)
System.out.println("请输入你的密码");
while(true){ //<--------while在这里
int password=a.nextInt();//获取扫描器的值(如一次输入多个值再来一个nextInt()获取)
System.out.println("密码不正确请再输入一次");
if(password!=123456){
continue;
}
break;
}
System.out.println("密码正确!");
}
}

常用从Scanner获取数据方法:

public class one {
public static void main(String[] args) {
Scanner a = new Scanner(System.in);
String aa = a.next();//获取字符串类型
int bb = a.nextInt();//获取int类型
double cc = a.nextDouble();//获取double类型
float dd = a.nextFloat();//浮点类型 } }

do while循环

先执行do再执行while(先判断再循环)


import java.util.*;
public class test{
public static void main(String[] args){
Scanner a=new Scanner(System.in);
int b;
Random c=new Random();//随机模块
int d=c.nextInt(101);
do{
System.out.println("猜猜电脑随机生成的数是多少?");
b=a.nextInt();
if(b<d){
System.out.println("小了");
}else if(b>d){
System.out.println("大了");
}
}while(b!=d);
System.out.println("恭喜答对了");
}
}

for 循环

demo1

    public static void main(String[] args){
int sum = 0; //int i= 1;就是计数器的初始化,只初始化一次
//i <= 100就是循环条件,循环多少次就判断多少次
//i++计数器的累加,循环多少次就累加多少次,执行时机是当前这次循环执行完毕 for(int i = 1; i <= 100; i++){
if(i%2 == 0){
sum += i;
} }
System.out.println("1~100的偶数和是:"+sum);
}
}

demo2

class Demo2{

    /*
打印乘法口诀
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
.... 1*9=9 2*9=18..... 9*9=81
*/
public static void main(String[] args){ //行的循环
for(int i = 1; i <= 9; i++){
for(int j = 1; j <= i; j++){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();
} }
}

demo3

import java.util.*;
public class test{
public static void main(String[]args){
Scanner a=new Scanner(System.in);
double sum=0;
double ave=0;
for(int i=1;i<=5;i++){//i = 1是申明的变量初始值,i<5循环的条件,i++步长,每次加1
System.out.println("请输入你的第"+i+"门成绩");
int score=a.nextInt();
sum=sum+score;
ave=sum/5;
}
System.out.println("你的平均成绩是:"+ave);
}
}

for each

import java.util.*;
public class one {
public static void main(String[] args) {
String[] a = {"123","456","789"};
for (String i : a ) { //<--------在这里
System.out.println(i);
} } }
结果:123 456 789

break continue

下面的代码展示了break、continue 及循环标签(break和continue可以指定标签继续循环或跳出)

public class one {
public static void main(String[] args) {
int count = 0;
loop1 : while (count <= 10) {//loop1是循环标签可以不写,如果写了名字可随意
loop2 :for (int i = 0;i <= 5;i++) {//循环5次
if (i == 1) {//做个演示没什么意义
System.out.println(1);
continue loop2;//结束本次循环继续下次for循环
}
if (i <= 5) {//做个演示没什么意义
System.out.println(2);
break loop1;//指定跳出while }
}
count += 1;
} }
}

判断

if else

public class one {
public static void main(String[] args) {
int count = 1;
while (count <= 10) {//循环10次
if (count == 7) {//判断次数是否到7
System.out.println("到" + count + "了");
}
if (count == 8) {//判断次数是否到8
System.out.println("到" + count + "了");
}
if (count == 9) {//判断次数是否到9
System.out.println("到" + count + "了");
}
else {
System.out.println("到" + count + "了");
}
count += 1;
} } }
结果:到7了 到8了 到9了 到10了

注意:为提高效率多个if ..if...if (可写为if...else if提高效率)

switch

public class one {
public static void main(String[] args) {
int count = 1;
while (count <= 10) {//循环10次
switch(count) {
case 7: //判断次数是否到7
System.out.println("到" + count + "了");
break;//记得要break不然会出现意想不到的后果如多循环了几次
case 8: //判断次数是否到8
System.out.println("到" + count + "了");
break;
case 9: //判断次数是否到9
System.out.println("到" + count + "了");
break;
case 10: //判断次数是否到10
System.out.println("到" + count + "了");
break;
// default: //同else
// System.out.println("不满足的条件都算我的");
}
count += 1;
} } }
结果:到7了 到8了 到9了 到10了

注意:case完成记得一定要break不然会出现意想不到的后果,如:多循环了几次

Java 变量、循环、判断的更多相关文章

  1. java代码-----循环变量的

    总结:输出相同的结果,很可能就是-个只是赋初始值, package com.mmm; public class Pnal { public static void main(String[] args ...

  2. JS 中对变量类型判断的几种方式

    文章整理搬运,出处不详,如有侵犯,请联系~   数据类型判断和数据类型转换代码工具 在 JS 中,有 5 种基本数据类型和 1 种复杂数据类型,基本数据类型有:Undefined, Null, Boo ...

  3. Java之 循环(三)

    1. switch语句 1.1 分支语句switch语句 格式 switch (表达式) { case 1: 语句体1; break; case 2: 语句体2; break; ... default ...

  4. 第二周:Java For循环方法简介

    1.for循环的作用 Java当中循环的意思就是让Java程序重复地执行某些语句.在程序设计时,常常需要处理大量的重复动作, 采用循环结构可以降低程序书写的长度和复杂度可使复杂问题简单化,提高程序的可 ...

  5. java integer对象判断两个数字是否相等

    java integer对象判断两个数字是否相等,不一定对 问题发生的背景:javaweb的项目,起先,因为在java中实体类中的int类型在对象初始化之后会给int类型的数据默认赋值为0,这样在很多 ...

  6. [Java基础]循环结构3

    [Java基础]循环结构3 break 与 continue 中断循环... /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:BreakTest.java 编写时间:2016/6 ...

  7. [java基础]循环结构2

    [java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:GameForFor.java 编写时间:2016 ...

  8. [java基础]循环结构1

    [java基础]循环结构1 循环结构:for循环,while循环,do_while循环在,增强型for循环 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:WhileTest.j ...

  9. Python条件循环判断

    1.条件判断语句 Python中条件选择语句的关键字为:if .elif .else这三个.其基本形式如下: 1 2 3 4 5 6 7 8 9 age_of_cc = 27   age = int( ...

  10. shell学习之变量、判断、重复动作

    1.1 环境以及变量的定义.赋值.展开.删除 export:将一个变量导入到环境中:export PATH=$PATH:/home. readonly 讲一个变量设置为只读模式,在shell脚本中定义 ...

随机推荐

  1. Java_myBatis_一对多映射

    例如我们有需求需要实现以下查询  "一个用户对多条订单编号": select user.*,o.number,o.createtime from user left JOIN or ...

  2. Jenkins自动发布代码实战篇

    Jenkins自动发布代码实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.Jenkins服务器配置秘钥对并上传到Gitlab中 1>.在Jenkins后端生成秘钥 ...

  3. CM记录-迁移JournalNode和Service Monitor超时解决方案

    1.迁移JournalNode节点 当你在HDFS服务中新加入一个JournalNode角色时,JournalNode角色需要的数据目录是没有被创建的.但你启用HDFS的HA后,NameNode必须需 ...

  4. CM记录-操作系统调优

    1.避免使用swap分区---将hadoop守护进程的数据交换到磁盘的行为可能会导致操作超时:物理内存(交换)--Swap分区 2.调整内存分配策略---操作系统内核根据vm.overcommit_m ...

  5. div中让内容能不换行就尽量不换行.【纯原】

    div中让内容能不换行就尽量不换行,部分左对齐,部分右对齐. <html> <head> <title>九歌·少司命</title> <style ...

  6. Spark2.1.0编译

    1.下载spark源码包 http://spark.apache.org/downloads.html 2.安装Scala与maven,解压spark源码包 安装Scala: tar zxf scal ...

  7. Django学习手册 - 模板继承与导入

    核心: PS:一个页面只能继承一个模板. 前置: 配置url. 配置views 关键字: 1. {% extends "index模板.html" %} 声明继承于哪个模板 ,关联 ...

  8. 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践

    ### 2018-2019-2 网络对抗技术 20165320 Exp3 免杀原理与实践 一.实验内容 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...

  9. Java导出List集合到txt文件中——(四)

    有时候,需要将数据以一定格式导出到txt文件中.利用Java的IO可以轻松的导出数据到txt中. package Action.txt; import java.io.BufferedWriter; ...

  10. JXL导出Excel(只支持xls版本)——(一)

    注意: 导出的后缀是xls可以直接打开,如果导出的后缀是xlsx打开报错,需要手动将名字改为xls才可以打开.也就是JXL不可以导出xlsx的excel. Jar包