JAVA开始(基础篇)
数据类型
Boolean 1位
Byte 1个字节(8位)
Short 2个字节
Char 2个字节
Int 4个字节
Long 8个字节
默认类型
默认使用的是double和int,如果要使用float或者long需要在其数字后面加上F或者L
float ff=3.28F;
long lo=2000000000000000L;
Char为什么是两个字节
因为在C中char是ascll的字符集,最大为255,而java的char是Unicode的字符集,最大为65535,其容纳了各国的字符。
所以C中不可以使用汉字作为变量名,而java则可以
char ch1=1000;
char ch2='A';
char ch3='东';
char ch4='\r';
布尔类型
Boolean类型只占有一位,其并不像C语言可以实现非零即真,其值必须为true或者flase
boolean b1=100;//报错
boolean b2=true;
类型自动转换
小类型会自动转换为大类型
Byte->short->int->long->float->double
量与运算
变量与常量
类变量:变量会自动赋有初值零,归属于类对象,使用必须通过类对象
类静态变量:变量会自动赋有初值零,归属于类,最好使用类名调用
局部变量:局部变量无初值,必须手动赋值后才可以使用
常量:值不可变的量(final int II=10;)
作用域
局部变量的作用域为{ }

三目运算
int ii=3>8?1:2;//输出2
Switch()…case
其值可以是数字、字符、字符串,之前是不可以使用字符串的,但在JDK1.7即之后将可以使用字符串
位运算或逻辑运算
位运算:【&】、【|】、【~】、【^】(按位异或,相同返回0,不同返回1)
逻辑运算:【&】、【&&】、【|】、【||】、【!】

图片来源于尚学堂
例:
“~”和“!”的区别:
1.“~”二进制的按位去反,1为(0000 0001)2,~1=1111 1110
2.“!”逻辑取反,非0为真,0为假
数学运算
随机数
Double d=Math.random();//返回区间 [0,1)
指数运算
public static double pow(double a, double b)
System.out.println(Math.pow(2, 3));//输出:8.0
平方根
public static double sqrt(double a)
System.out.println(Math.sqrt(9));//输出:3.0
控制台输入
next() 接收一个字符串,空格或回车结束
nextLine() 接收一个字符串,回车结束
nextInt() 接收一个int类型数据
nextDouble() 接收一个double类型数据
nextBoolean() 接收一个boolean类型数据
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);//得到输入对象
String name=sc.nextLine();//获取一行字符串
int i=sc.nextInt();//获取数字
System.out.println("name="+name+" i="+i);//输出
}
}
转义字符的输出
【\】、【”】、【”】、【\n】
System.out.println("\\n");//输出:\n
异常检测
异常语句块
try {
//待检测异常语句
}catch(Exception e) {
//出现异常后的处理语句
}finally {
//必须会执行的语句
}
抛出异常
public class Main{
public static void main(String[] args) {
//调用函数时必须检测异常
try {
tt();
} catch (Exception e) {
System.out.println("----调用函数被抛出异常----");
e.printStackTrace();
}
}
//抛出异常
public static void tt() throws Exception{
int x=6/0;
}
}
JAVA环境
1、由图可知,三者为包含关系,JDK包含JRE,JRE包含JVM;
2、开发Java程序时必须要安装JDK
3、运行Java程序时有JRE就好了
4、JVM时虚拟机,JVM对应每个系统的虚拟机由官方提供,所以开发Java程序时可以不考虑每个平台的差异性,可以实现一处编程处处使用的效果。
5、JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

命令行的第一个java程序
代码:
随意新建一个目录Myjava,里面新建一个文件Dong.java
public class Dong{
public static void main(String[] args){
System.out.println("DongXiaoDong");//输出
}
}
进入目录
cd /d E:\Myjava
编译
编译后会出现同名的.class文件,此文件为虚拟机解释文件
javac Dong.java
执行
java Dong
运行结果

出现错误时:

编辑工具下载与安装
下载
官网下载
https://www.eclipse.org/downloads/
本文使用:
链接:https://pan.baidu.com/s/10ZDqTZbhnQy6sGnYmw0_tw
提取码:sxz2
安装

选择工作空间
工作空间是存放工程的地方,可以勾选下面的记住此次选择

新建工程

新建类

JAVA开始(基础篇)的更多相关文章
- 你所不知道的库存超限做法 服务器一般达到多少qps比较好[转] JAVA格物致知基础篇:你所不知道的返回码 深入了解EntityFramework Core 2.1延迟加载(Lazy Loading) EntityFramework 6.x和EntityFramework Core关系映射中导航属性必须是public? 藏在正则表达式里的陷阱 两道面试题,带你解析Java类加载机制
你所不知道的库存超限做法 在互联网企业中,限购的做法,多种多样,有的别出心裁,有的因循守旧,但是种种做法皆想达到的目的,无外乎几种,商品卖的完,系统抗的住,库存不超限.虽然短短数语,却有着说不完,道不 ...
- java 线程基础篇,看这一篇就够了。
前言: Java三大基础框架:集合,线程,io基本是开发必用,面试必问的核心内容,今天我们讲讲线程. 想要把线程理解透彻,这需要具备很多方面的知识和经验,本篇主要是关于线程基础包括线程状态和常用方法. ...
- JDBC-使用Java连接数据库-基础篇
这是小主第一次写Java连接数据库博客,初学Java之时,Java连接数据库是我最头疼的,不过经过一个月的学习,也差不多略有收获,所以给大家分享一下. Java连接数据库大约需要五大步骤: 创建数据库 ...
- Java编程基础篇第一章
计算机语言 人与计算机交流的方式. 计算机语言有很多种如:C语言,c++,Java等 人机交互 软件的出现实现了人与计算机之间的更好的交流(交互) 交互方式 图形化界面:便于交互,容易操作,简单直观, ...
- java面试基础篇(三)
1.Q:ArrayList 和 LinkedList 有什么区别? A:ArrayList查询快!LinkedList增删快.ArrayList是基于索引的数据接口,它的底层是数组.空间占用相对小一些 ...
- java面试基础篇(二)
上一篇,我们说了一下线程和Map,或许那些太抽象,不太好理解,也不太方便记忆,我们这次说一些简单的. 1.Q:java的基本数据类型有哪些? A:四种整数类型(byte.short.int.long) ...
- 新年在家学java之基础篇-高级类的特性
继承 extends 子类的共性代码都是继承自父类的,每个子类只要写自己特有的代码 class 子类 extends 父类 继承提高了代码的复用性,提供了多态的前提,但是不要为了某个功能去继承 子类不 ...
- 新年在家学java之基础篇--循环&数组
因为“野味肺炎”的肆虐,过年被迫宅家只能吃了睡.睡了吃.这么下次只能长膘脑子空空,不如趁此机会重新学习java基础,为日后做铺垫~ 循环结构: 几种循环:for(::),while(){},do{}w ...
- JAVA格物致知基础篇:用JAX-RS和Jersey打造RESTful Service
随着服务器的处理能力越来越强,业务需求量的不断累积,越来越多的公司开始从单一服务器,单一业务承载变成了多服务器,多业务承载的快速扩展的过程中.传统的方法很难满足和应付这种业务量的增长和部署方式的改变. ...
- java 开发基础篇1环境安装--eclipse安装教程
如何安装java环境 http://jingyan.baidu.com/article/a24b33cd59b58e19fe002bb9.html JDK download http://www.or ...
随机推荐
- 面试超火题 This的问题!!!
this问题 (1)this是js的一个关键字,指定一个对象,然后替代this: 函数中的this指向行为发生的主体,函数外的this都指向window,没有意义 (2)函数内的this跟函数在什么环 ...
- iOS开发系列之性能优化(上)
本篇主要记录一下我对界面优化上的一些探索.关于时间优化的探索将会在中篇里进行介绍.下篇将主要介绍一些耗电优化.安装包瘦身的探索. ### 1.卡顿原理 要了解卡顿原理,需要对帧缓冲区.垂直同步.CPU ...
- 简单的python爬虫实例
目标网站:https://www.quanjing.com/category/1286521/2.html 爬取搜索出来的所有“中东人”的图片: 先看一下源代码,找到存放图片链接的地方,在源代码最下面 ...
- 微服务-springboot多环境配置(开发生产测试环境切换)
springboot根据spring.profiles.active会去寻找应该加载开发环境配置还是生产环境配置 application.properties #生产环境,开发环境,测试环境切换 pr ...
- linux上mysql MM(双主)架构及keepalived搭建
master1 10.1.1.14 VIP 10.1.1.16master2 10.1.1.15 VIP 10.1.1.16 一.mysql MM配置1.修改master1的my.cnf# vi /e ...
- Python3 列表的基本操作
列表索引和切片 和字符串一样,也有索引和切片,只不过切出来的内容是列表. 索引的下标从0开始. lst= ["海上钢琴师", "奥特曼", "舌尖3& ...
- c++稍微复杂桶排序(未完待续~)
由于上次的桶排序占用空间太多,这次又有了一个新的办法 直接上代码: #include <bits/stdc++.h> using namespace std; int n; void bu ...
- Notepad++提升工作效率小技巧
前言 简单的提升工具效率需求可以借助Notepad编辑器实现.以前也用Python/Shell开发过本文中提到的需求,现在发现其实没有必要.本文介绍一些工作中常见的可以通过"Notepad+ ...
- SQL Server 存储过程相关语法
一.定义变量及赋值 1.1 普通变量 --定义变量 declare @parameter_set int ) ) --set 关键字赋值 ; --select 赋值 select @parameter ...
- mysql+mybatis存储超大json
1. 场景描述 因前端界面需存储元素较多,切割后再组装存储的话比较麻烦,就采用大对象直接存储到mysql字段中,根据mysql的介绍可以存放65535个字节,算了算差不多,后来存的时候发现: 一是基本 ...