UM2L13——Java泛型
UM2L13——Java泛型 Java泛型 Java 中泛型使用的基本规则和 C# 中一致 (注意!泛型在 java 底层的实现和 C# 完全不同) , 泛型可以代表一切类型,主要使用上就是泛型类和泛型方法,主要区别如下: 泛型方法写法和使用不同 泛型约束不同 泛型类型通配符 ? 一些基础类型必须写他们的包装类名,不能写变量类型(例如 int 就需要写 Integer) 泛型基本用法 泛型类的声明和使用如下: 1234567public class TestT<T> { public T testValue; public T testFun(T t) { return t; }} 1234567public class Lesson16 { public static void main(String[] args) { TestT<Float> obj = new TestT<>(); ...
UM2L12——StringBuilder
UM2L12——StringBuilder 本章代码关键字 1234stringBuilder.append() //添加字符串stringBuilder.insert() //在指定索引处插入字符串stringBuilder.delete() //删除指定范围内的字符串stringBuilder.toString() //将stringBuilder转换为字符串 StringBuilder Java 中的 StringBuilder 和C#基本一致,主要是用于处理会频繁修改的字符串的 如果你的字符串变量会频繁被修改,建议使用 StringBuilder 可以帮助我们节约性能 StringBuilder 节约性能的体现 下面的代码会分别输出 String 字符串拼接 10000 次和 StringBuilder 字符串拼接 10000 次所消耗的时间(单位:毫秒): 12345678910111213String str = new String("");long startTime =...
UM2L11——String
UM2L11——String 本章代码关键字 123456789101112131415string.equals() //对比字符串的值是否相同string.equalsIgnoreCase() //对比字符串的忽略大小写的值是否相同string.length() //获取字符串长度string.indexOf() //正向查找字符串中的某个字符或字符串,返回其索引,不存在返回-1string.lastIndexOf() //反向查找字符串中的某个字符或字符串,返回其索引,不存在返回-1string.charAt() //通过索引获取某个字符串string.substring() //截取子字符串,左包含又不包含string.trim() //删除字符串左右两边的空格string.replace() ...
UM4——Android SDK 接入(以百度定位SDK为例)
UM4——Android SDK 接入(以百度定位SDK为例) SDK SDK 是 Software Development Kit(软件开发包)的简写 一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合 说人话: SDK 就是程序员针对某些操作系统(比如 Windows、Android、IOS)写好的代码,这些代码用于完成某些功能逻辑 操作系统的不同,那么对应的开发语言也就不同,比如 Android 平台可能是基于 Java 写的,IOS 平台可能是基于 Objective-C 写的等等 本系列学习内容(以接入百度定位SDK为例) 交互项目创建 接入所有第三方SDK的套路 获取SDK完成准备工作 配置修改、权限修改 Unity调用对应API 打包测试 为什么要接入SDK? 很多游戏或软件的第三方功能都是第三方平台提供的 我们想要在产品中使用这些功能,就需要接入这些第三方的SDK 比如游戏内的 支付宝支付功能、微信支付功能、各平台登录功能、数据统计功能等等 举例: 我们制作的游戏找到了代理商...
UM3——Unity 和 Android 交互
UM3——Unity 和 Android 交互 Unity 和 Android 交互 Unity 和 Android 之间的交互主要指,在发布安卓项目时,我们可以 在 Unity 相关代码中调用 Android 相关内容 在 Android 相关代码中调用 Unity 相关内容 要达到这样的目的,我们需要建立Android项目,将Android项目以jar包或aar包的形式导入Unity后进行交互,再一起打包 其中,jar 和 aar 包都是归档文件 jar 包: jar 包 包含 Android 项目中的脚本文件和清单文件,不包含资源文件,jar 包导入其他工程后,其他工程可以方便引用源码 aar 包: aar 包是 Android Studio 下打包 Android 工程中的 src (脚本文件)、res (资源文件)、lib (库文件)后生成的打包文件, aar 包导入其他工程后,其他工程可以方便引用源码和资源文件 注意:用 Android Studio 打包时一般以 aar 包形式,用 Eclipse 打包时一般以 jar 包形式 简单记忆:jar 和...
UM2L10——内部类
UM2L10——内部类 内部类 Java 中的内部类和 C# 中区别较大,在使用时一定要注意他们的区别之处 Java 中的内部类在外部使用时必须伴随包裹它的外部类的出现而出现 外部类中的所有内容(包括私有)都可以直接在内部类中使用 内部类和外部类中的同名成员,通过 this 和 外部类.this 来区分 匿名类使用较少,主要做了解,能看懂即可 Java中的内部类的使用 注意:Java 中的内部类的使用和 C# 有很大的不同 Java 中的内部类在外部使用时必须伴随包裹它的外部类的出现而出现,声明语法为: 12外部类 outer = new 外部类();外部类.内部类 inner = outer.new 内部类(); 也就是说,在外部使用非静态的内部类,必须要先实例化一个外部类对象,再通过这个外部类对象实例化内部类,实际例子: 12Outer outer = new Outer();Outer.Inner inner = outer.new...
UM2L9——包
UM2L9——包 本章代码关键字 123package //指明类属于哪个包import //导入包import static //静态导入包 Java 的包 Java 中的包(package)类似 C# 中的命名空间,主要用于解决类名冲突 同名类做不同逻辑时,可以将两个类放到两个不同的包中 Java 中的包概念和使用类似 C# 中的命名空间 但是相对 C# 中的命名空间来说,Java 中需要自己先创建包 在文件的开头使用 package 语句指定放到哪个包下,即可将该类放到包内 但是要注意,该语句后的包名需要和java文件所在的文件夹路径对应上,否则报错 1234package com.taikr.java.test;public class test2 {} 在资源管理器内可以看到,所谓的包其实就是文件夹,包名中用点分割的字段就代表一个文件夹 如图就是 com.taikr.java.test...
UM2L8——面向对象
UM2L8——面向对象 本章代码关键字 123456789class //类的声明关键字finalize() { } //在对象成为垃圾后,开始GC时,如果对象存在finalize()方法,会先执行一次该方法,下次GC才会回收该方法extends //类的继承关键字instanceof //判断某个对象是否是某个类型,类似于C#的is关键字final //此关键字修饰的类不能再被继承,修饰的方法不能再被重写,修饰的变量不能修改(等同于常量)super //调用父类的方法的关键字abstract //抽象类和抽象方法关键字interface //接口声明关键字implements ...
UM2L7——函数
UM2L7——函数 函数 Java 中函数的使用和 C# 基本一致,区别主要是: Java 中没有 ref 和 out 关键字 Java 中可变参数写法有些许不同,用…表示可变参数 Java 中函数参数没有默认参数的用法,即不能为参数添加默认值 Java 中函数的命名方式 用的是驼峰命名法 Java 中的函数和 C# 对比 Java 中函数和 C# 中函数的使用基本一致函数的声明、重载、使用等就按照 C# 中的基础规则使用即可 主要区别如下: Java 中没有 ref 和 out 关键字 Java 中可变参数写法有些许不同 Java 中函数参数没有默认参数用法,即不能为参数添加默认值 复习函数基本概念 函数(方法)本质是一块具有名称的代码块,可以使用函数(方法)的名称来执行该代码块 函数(方法)是封装代码进行重复使用的一种机制 函数(方法)的主要作用 封装代码 提升代码复用率(少写点代码) 抽象行为 Java的函数写在哪里 class 语句块中,Java 中没有结构体,所以不存在结构体语句块 Java函数基本语法 12345678910 1 ...
UM2L6——数组和Arrays类
UM2L6——数组和Arrays类 本章代码关键字 1234567import //向该文件导入某个包java.util.Arrays //Arrays类所在的包Arrays.fill() //填充数组Arrays.sort() //为数组排序,默认是升序排列Arrays.copyOf() //复制数组Arrays.copyOfRange() //复制数组的指定范围内内容Arrays.binarySearch() //查找数组内的某个元素,返回索引 数组 Java 中的数组使用和 C# 中基本类似,区别是: 数组的声明有些许区别 Java 中的二维数组和交错数组的写法都是 [][] 而 C# 中的 二维数组是 [,],交错数组是 [][] 一维数组 相比于 C#,Java 的数组有两种声明方式,一种是 [] 在变量类型后,另一种是 [] 在变量名后,后者是沿袭自 C/C++...