Day10

Day10

冒泡排序

冒泡排序:就是相邻的两个元素进行两两比较,把元素值大的元素依次向后排

public static void sort(int[] arr) {
    for(int x=0; x<arr.length-1; x++) {
        for(int y=0; y<arr.length-1-x; y++) {
            if(arr[y] > arr[y+1]) {
                int temp = arr[y];
                 arr[y] = arr[y+1];
                    arr[y+1] = temp;
               }
           }
      }
    }

Arrays工具类

Arrays:提供了对数组操作的各种方法

public static String toString(int[] a):把数组转成字符串
public static void sort(int[] a):对数组进行升序排序

包装类

包装类为了对基本数据类型进行更多更方便的操作,Java就针对每一种基本数据类型提供了一个对应的引用类型 基本数据类型包装类最常见的用法就是用于和字符串之间进行相互转换。

对应包装类

byte        Byte
short       Short
int         Integer
long        Long
float       Float
double      Double
char        Character
boolean     Boolean

类型转换

Integer i = new Integer(100);
Integer i = new Integer("100"); //字符串必须是数字字符串

//基本数据类型和字符串之间转换
int -- String
int a = 10;
String s = a+"";
String s = String.valueOf(a);//任意的数据类型转成String

String -- int
int a = Integer.parseInt("100");
char c = "abcd".charAt(0);自动装箱,拆箱自动 装箱 :把基本数据类型转成对应的包装类类型  int -- Integer \
自动 拆箱 :把包装类类型转成对应的基本数据类型  Integer -- int在使用包装类类型的新特性的时候,如果做操作,最好先判断是否为null。开发中的原则只要是对象,在使用前就必须进行不为null的判断。

Integer i = 100;

int a = i;

## Date类和SimpleDateFormat类

> Date
* Date日期类,表示特定的瞬间,精确到毫秒 
    + Date date = new Date();表示当前时间 
    + Date date = new Date(1000*60*60);表示的是自1970年1月1日 00时00分00秒 又经过了1个小时的时间,东八区,还要加上8小时

> 设置和获取时间的方法:操作的都是毫秒值long

* date.setTime(1000);
* long l = date.getTime();

## SimpleDateFormat类的概述和使用

> SimpleDateFormat:是一个以与语言环境有关的方式来格式化和解析日期的具体类 
>
> 目的:为了能更好的表示时间让所有人看能看懂
>
> 它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)

```bash
// 格式化(日期 -> 文本): Date -- String
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EEE");
Date date = new Date();
String s = sdf.format(date);
// 解析(文本 -> 日期):  String -- Date
String str = "2080-08-08 12:23:45";
Date date2 = sdf.parse(s);

Calendar概述

由于日期类对年月日的单独获取和加减运算不太方便可使用Calender

    //1.创建对象 
    Calendar cal = Calendar.getInstance();//表示当前时间
    // 方法
    int year = cal.get(Calendar.YEAR); // 年
    int month = cal.get(Calendar.MONTH)+1; // 第几个月
    int day = cal.get(Calendar.DAY_OF_MONTH); //这个月的第几天(几号)
    int week = cal.get(Calendar.DAY_OF_WEEK)-1: // 周几

    // 设置年份
    cal.set(Calendar.YEAR,1000);

    // 转换 Date -- Calendar
    Date date = new Date();
    cal.setTime(date);

    // 转换 Calendar -- Date
    Date date = cal.getTime();

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云霄雨霁

Java--集合类之Collection与Map

24480
来自专栏赵俊的Java专栏

不用加减乘除做加法

20940
来自专栏Hongten

java中的List记录是否完全匹配方法

===================================================

11610
来自专栏皮皮之路

【JDK1.8】JDK1.8集合源码阅读——LinkedHashMap

11140
来自专栏IT可乐

JDK1.8源码(八)——java.util.HashSet 类

  在上一篇博客,我们介绍了 Map 集合的一种典型实现  HashMap  ,在 JDK1.8 中,HashMap 是由 数组+链表+红黑树构成,相对于早期版...

12220
来自专栏Java帮帮-微信公众号-技术文章全总结

第十九天 集合-Map接口容器工具类集合框架总结【悟空教程】

Map集合的特点,如是否可重复,是否有序仅作用在键上,如HashMap集合的键不得重复,值可以重复。

24330
来自专栏尾尾部落

[算法总结] 一文搞懂面试链表题

链表是面试过程中经常被问到的,这里把剑指offer 和 LeetCode 中的相关题目做一个汇总,方便复习。

15810
来自专栏Java帮帮-微信公众号-技术文章全总结

【Java提高十七】Set接口集合详解

三、Set接口 Set是一种不包括重复元素的Collection。它维持它自己的内部排序,所以随机访问没有任何意义。与List一样,它同样运行nu...

37990
来自专栏技术小站

(转)JAVA HashSet 去除重复值原理

Java中的set是一个不包含重复元素的集合,确切地说,是不包含e1.equals(e2)的元素对。Set中允许添加null。Set不能保证集合里元素的顺序。

31710
来自专栏禁心尽力

Set容器--HashSet集合

Set容器特点: ①   Set容器是一个不包含重复元素的Collection,并且最多包含一个null元素,它和List容器相反,Set容器不能保证其元素的顺...

23650

扫码关注云+社区

领取腾讯云代金券