java学习(更新中)
class Test
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
在java源文件中可以有多个class类,但是只能有一个类有public属性,要求有public属性的那个类的类名必须与源文件的文件名相同
HelloWorld.java -----> public class HelloWorld
程序入口是main方法,格式固定,但是参数不固定
System.out.println("Hello World!"); //先输出后换行
System.out.print("Hello World!"); //输出
编译以后会生成一个或多个字节码文件(.class),字节码文件个数与java文件中类的数量相同
应用程序 = 算法 + 数据结构
/** */:文档注释
基本数据类型:
byte short int long
浮点类型:float,double
字符型:char
布尔型:boolean
引用数据类型:
类: class <------字符串在这里
接口:interface
数组: array[]
//long型变量必须以“L”或者“l”结尾,标识一下
//float型变量必须以“F”或者“f”结尾,标识一下
char == 2 byte
在java中char站两个字节,java使用unicode编码,两个字节表示一个字符
布尔类型:true false
java中只用这两个值表示判断
在特殊符号前面(比如“ \n '这些) 加“\”表示后面的特殊字符不是用来作为字符,而仅仅作为一个成员

自动类型提升
接收容量大小 byte,char,short------>int------->long----->float------->double
byte a= 1;
int b = 400;
a+b的结果应该用int 或者比int数据宽度跟宽的类型接收
byte char short 三者互相或者自身两两做运算时,接收值为int类型或以上(其实我猜想就是方便cpu寻址)
强制转化
小转大没什么,大转小有可能有精度损失,数据截断
整型常量默认类型是int型,浮点型常量默认类型是double
String
一个引用数据类型,在类中,字符串
使用双引号
char是字符,使用单引号
可以与其他八种基本数据类型变量做运算,只能使用连接符”+“,结果也是个String类型
“+”只有在与String作运算时才算连接符,其他类型都当作加法,char类型对应UNIONCODE编码的数作加减
String str;
str.charAt(n); n表示索引,取第几个字符,用char接收
str.equals("xx"); 判断是不是相等
运算符
i++ 先运算再++
++i先++再运算
扩展运算符
+=,-+,*=,/=,%=
不改变变量本身数据类型
short s = 3;
s = s+2; //编译不通过 2默认是int类型
s+=2; //编译通过(推荐使用)
比较运算符
比较运算符的结果是boolean类型
逻辑运算符
短路与 && 短路或|| 逻辑异或^
&和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假;
位运算符
<< 左移 >>右移 >>>无符号右移 & | ^ ~
三元运算符
(条件表达式)?表达式1:表达式2
运算符优先级

if else
if()
{}
else if()
{}
......
else
{}
Scanner
这是个API,像String一样是再Class中,我们可以通过 Scanner 类来获取用户的输入。
使用:
1.导包:import java.util.Scanner;
2.实例化:Scanner scan = new Scanner(System.in)
3.调用相关函数(方法),来获取指定类型变量
Scanner scan = new Scanner(System.in);
int i = scan.nextInt();
接收用户输入的一个int类型的整数
Switch case
switch结构中的表达式只能是byte,short,char,int,枚举类型(JDK5新增),String类型(JDK8.0新增)
循环

break continue可以指定标识符那一层循环
java学习(更新中)的更多相关文章
- Java 与C++的各种优势与弱点--学习更新中
时隔两年没有怎么碰Java了,最近开始学习回顾下.在这里记录下学习的点滴,持续更新...希望对c++\java等不同语言有较为清晰的认识,至少不要学完以后,哪一个都不会了... Java 优势: 1. ...
- java中enum----枚举的学习(更新中)
package com.hdmaxfun; import java.util.Scanner; import com.icpc.Icpm; import java.util.HashMap; impo ...
- java学习-http中get请求的非ascii参数如何编码解码探讨
# 背景: 看着别人项目代码看到一个PathUtils工具类, 里面只有一个方法,String rebuild(String Path),将路径进行URLDecoder.decode解码,避免路径中 ...
- 初学matlab----函数用法(随学习更新中)
sort(A) 若A是向量不管是列还是行向量,默认都是对A进行升序排列. sort(A)是默认的升序,而sort(A,'descend')是降序排序. sort(A)若A是矩阵,默认对A的各列进行升序 ...
- Java学习——方法中传递参数分简单类型与复杂类型(引用类型)编程计算100+98+96+。。。+4+2+1的值,用递归方法实现
package hello; public class digui { public static void main(String[] args) { // TODO Auto-generated ...
- java视频教程 Java自学视频整理(持续更新中...)
视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...
- 关于Java,那些我心存疑惑的事(不断更新中...)
本文主要列出一些Java常用到确又让大家不怎么注意的问题. 将会不断更新,欢迎关注-- 如有觉得不合理之处,欢迎评论交流,没有火花怎么印象深刻? (1)Java到底是值传递?还是引用传递? 揪出这个问 ...
- Java学习-045-目录中文件拷贝
挺晚的了,直接上码.敬请各位小主参阅,若有不足之处,敬请指正,非常感谢! 目录文件拷贝源码: /** * <strong>目录拷贝</strong><br> * & ...
- Java学习-043-获取文件在目录中的路径
我们在日常的电脑使用中,经常需要在当前目录或当期目录及其子目录中查找文件,并获取相应的文件路径名.在我们的自动化测试中,也经常需要确认文件在目录中是否成功生成或已存在,因而我写了一个小方法来实现. 获 ...
随机推荐
- how to auto open a url in the browser by using terminal
how to auto open a url in the browser by using terminal Linux / MacOS # bash / zsh $ open http://loc ...
- vue v-io 父子组件双向绑定多个数据
vue-io-directive 可以减少使用emit,组件自带的v-model好像也只能设置一个 安装 npm i vue-io-directive 使用 import Vue from 'vue' ...
- 10000星光值兑换一个的VAST将如何搅动NGK算力市场?
加密数字货币是私人而非政府所发行的数字资产,具有自己的"货币"账户单位,在可以预见的未来三年之内,加密数字货币将覆盖至少全世界五分之一的人口.为此,NGK方面也做出了自己的努力,在 ...
- django学习-13.通过pk值手动设置数据表主键
1.前言 通过django框架的Model层来新增数据库表时,如果在需要新增的表字段里任何一个表字段都没设置主键,框架会默认新增一个表字段id并把该表字段id设置为主键. 那么,如果我们想自己动手设置 ...
- 为什么ElasticSearch比MySQL更适合全文索引
熟悉 MySQL 的同学一定都知道,MySQL 对于复杂条件查询的支持并不好.MySQL 最多使用一个条件涉及的索引来过滤,然后剩余的条件只能在遍历行过程中进行内存过滤,对这个过程不了解的同学可以先行 ...
- Simple: SQLite3 中文结巴分词插件
一年前开发 simple 分词器,实现了微信在两篇文章中描述的,基于 SQLite 支持中文和拼音的搜索方案.具体背景参见这篇文章.项目发布后受到了一些朋友的关注,后续也发布了一些改进,提升了项目易用 ...
- JS把数组元素分组
有一个数组,把其中的元素按照每5个进行重新分组,新的数组放到放到大数组中,且看代码 let data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, ...
- Linux常用小命令
1:查看当前磁盘内存 df-ah/df-hl 2:查看文件和文件夹大小 du -h --max-depth=1 /目的文件夹 3:scp 拷贝命令 指定端口传输文件 scp -p port filen ...
- selectors版socket
一.作业需求: 使用SELECT或SELECTORS模块实现并发简单版FTP 允许多用户并发上传下载文件 二.readme 一.作业需求: 使用SELECT或SELECTORS模块实现并发简单版FTP ...
- Docker 概述(一)
1-1 虚拟化技术发展史 在虚拟化技术出现之前,如果我们想搭建一台服务器,我们需要做如下的工作: 购买一台硬件服务器:在硬件服务器上安装配置操作系统系统:在操作系统之上配置应用运行环境:部署并运行应用 ...