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 ...
随机推荐
- 并发编程-concurrent指南-原子操作类-AtomicLong
可以用原子方式更新的 long 值.有关原子变量属性的描述,请参阅 java.util.concurrent.atomic 包规范.AtomicLong 可用在应用程序中(如以原子方式增加的序列号), ...
- asp.net core系列 67 Web压力测试工具WCAT
一.介绍 最近搭建了一套CQRS框架,需要在投入开发前,进行必要的压力测试.Web Capacity Analysis Tool (Wcat)是一种轻量级HTTP负载生成工具,主要用于衡量受控环境中 ...
- CSS属性过滤
在前端领域,当我们想在ie6及以下版本和标准浏览器的样式不同我们怎么做呢 此时此刻不得不提到过滤器:即一种对特定浏览器显示和隐藏规则的声明方法 1.下划线属性过滤器 符合标准的浏览器都会忽略这个声明, ...
- Hash碰撞概率
计算Hash冲突的概率 虽然已经很多可以选择的Hash函数,但创建一个好的Hash函数仍然是一个活跃的研究领域.一些Hash函数是快的,一些是慢的,一些Hash值均匀地分布在值域上,一些不是.对于我们 ...
- C# 反射的详细理解
网友A的解释: C# 反射机制的学习心得 首先说说,为什么要学习 反射 呢?有什么用啊. 在我们写程序的时候,经常会用到一些类中的方法,那么就要调用这些个类.如果不是在一个命名空间里时,就要引用相 ...
- 2019.6.21 NOIP2018提高组模拟题(二)
1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路.正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条.亮亮拿起 ...
- Docker学习第二天
CentOS 系列安装 Docker Docker 支持 CentOS6 及以后的版本. CentOS6 对于 CentOS6,可以使用 EPEL 库安装 Docker,命令如下 [root@MSJT ...
- printf函数的返回值
先看下面一段程序: 文末会给大家推荐几本好书,希望能够需要的朋友一点帮助! #include <stdio.h> int main() { int i = 123; printf(&quo ...
- 【NOIP2017】图书管理员-C++
描述 图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个 正整数. 每位借书的读者手中有一个需求码,这个需求码也是一个正整数.如果一本书的图 书编码恰好以读者的需求码结尾,那么这 ...
- ubuntu18.04安装nvidia驱动总结经验
本人电脑是 DELL Inspiron 3670, 系统装的是ubuntu18.04, 显卡使用的是GeForce GTX 1050 Ti, 在安装nividia显卡的时候花费两天时间,感受颇深,顾总 ...