自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 数据结构_二叉树的创建和三种遍历方式(先序遍历、中序遍历、后序遍历)

创建节点类像在c语言中创建结构体一样创建一个节点类,节点的内容有节点数据、左子节点和右子节点除了getter和setter(),还需要一个有参的构造方法来接收节点的数据创建二叉树三种遍历方式先序遍历顺序:先序遍历根节点 -> 先序遍历左子节点 -> 先序遍历右子节点中序遍历顺序:中序遍历左子节点 ->中序遍历根节点 -> 中序遍历右子节点后序遍历顺序:后序遍历左子节点 -> 后序遍历右子节点 ->后序遍历根节点package Binar.

2020-08-06 08:38:12 1118

原创 四大组件_Activity_5.Activity之间数据的回传

Activity之间除了能正向传递数据,有的时候也需要从第N个Activity中回传数据给之前的Activity,这时候就要用到数据回传。举个例子,当我们要给手机充值话费,在充值界面输入充值金额并且充值完成后(成功或者失败),需要给上一个界面一个返回的数据,表示成功或者失败。数据回传的主要步骤如下:启动Activity时,将startActivity()方法改用为startActivityForResult()重写onActivityResult方法,用来接收处理回传活动回传过来的数据star

2020-07-31 10:04:20 1057

原创 四大组件_Activity_4.界面之间传递对象

界面之间除了可以通过putExtra(0方法来传递基本数据类型,还可以传递对象。首先我们需要创建一个User类,当要在不同界面之间传递该类的对象时,该类就要序列化,即实现parcelable接口,具体怎么实现请移步Android中Parcelable接口用法接下来我们来写一个实例,看看如何传递对象activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http:/

2020-07-29 22:03:55 620

原创 四大组件_Activity_3.通过隐式意图启动Activity、第三方应用

活动的启动有两种方式,除了显式启动还有隐式启动。两种启动方是在不同的场景中应用显式启动:一般用于Application内Activity的跳转可以直接在代码中看到要跳转到的Activity名称(.class)隐式启动:一般用于在一个Application中跳转到其他应用(在qq消息中点开位置信息,打开手机地图应用)大多数情况下并不知道第三方应用的类名,就需要获取第三方应用的包名和Activity名称采用隐式启动上篇文章讲了显式启动的demo,这篇用隐式启动来展示同样的demo

2020-07-28 11:30:38 681

原创 四大组件_Activity_2.通过显式意图启动Activity、跳转第三方应用

如果一个Application只有一个Activity的话,Application能创造的价值可就比现在少很多了。我们需要Activity之间能够灵活的跳转,除了跳转,它能够在不同的Activity之间传送数据才算意思。今天我们来写一个活动跳转的demo(账户登录),并侧重了解一下显式意图启动Activity展示结果(不会上传动态图)显式启动Activity当前ActivityIntent intent = new Intent(MainActivity.this,SecondAc

2020-07-25 09:34:03 618

原创 四大组件_Activity_1.了解AndroidManifest

Activity是安卓四大组件之一,AndroidManifest又被叫注册表。我们来看看这些部分是什么,在Activity中起着什么样的作用。这篇文章将分为两部分AndroidManifest以下是一个刚创建项目的AndroidManifest文件,为了方便阐述,我在第4行添加了网络权限的声明下面将分行注释<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.androi

2020-07-24 10:51:10 285

原创 Android Studio下载、导入jar/aar包

下载mvnrepository.com搜索点击下载(jar/aar)(区别可以自行了解)导入将文件放入libs下jar导入右键 选中add as library,弹出窗口,选中OK就可以,再进行同步就导入完成了aar导入打开当前module的build.gradle文件,加入repositories { flatDir { dirs 'libs' } } * 在dependencies中加上 ```java com.

2020-07-17 22:37:32 1015

原创 使用动画方式实现拖动滑动——动画兼容库(nineoldandroids)中的viewhelper类

滑动实现的方式有至少三种:scrollTo/scrollBy、动画以及改变布局参数。动画实现滑动比较方便,操作简单,主要适用于没有交互的Viewdemo成品*在这个demo中使用到了类 ViewHelper,使用这个类需要导入该类的jar包,下面贴一个能下载jar包的地址,需要不同的包可以载里面下载导入mvnrepository.com下载、导入方法等待补充layout<?xml version="1.0" encoding="utf-8"?><RelativeL.

2020-07-17 22:15:38 354

原创 getX()、getRawX()、getTranslationX()、gettranslationX()...

关于屏幕上获取这些位置的情况应该分为两种,一种是在没有点击屏幕时,另外一种是有点击我们来分别看看这几个X在图形上的直观表示和解释有点击时的getX() getY()getX()表示触摸点距离view本身左边界的距离getY()表示触摸点距离view本身上边界的距离没有点击时的getX() getY()getX()表示view本身左上角相对于父布局左边界的距离getY()表示view本身左上角相对于父布局上边界的距离getRawX() getRawY()getRa

2020-07-17 11:53:49 806

原创 android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context..

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?有时候我们会遇到这样的错误:android.util.androidruntimexception:从活动上下文外部调用startActivity()需要标志“活动”

2020-05-21 22:34:17 3596 1

原创 Java构造方法的理解

无参的构造方法会在创建类对象时自动生成(在你没有写任何构造方法时),我们常能在资料种看到构造方法的作用时初始化对象的内容,具体时怎么初始化的,又比较模糊。下面来看一个例子public class Student {//一个student类 String name;//姓名 int age;//年龄 public Student(String name, int age)...

2020-03-26 11:14:08 225

原创 Android——布局中bottom不起作用/left、right不起作用

LinearLayout中,如果设置位水平排列,只能在垂直方向上起作用(top、buttom等)如果设置位垂直排列,只能在水平方向上起作用(left、right等)想要这些都能同时起作用,可以使用FrameLayout。下面是我做的一个FAB的布局<FrameLayout xmlns:android="http://schemas.android.com/apk/res/and...

2020-03-01 09:47:38 731

原创 问题记录—— Manifest merger failed with multiple errors, see logs

Manifest merger failed with multiple errors, see logs翻译:清单合并失败,出现多个错误,请参阅日志引发这个问题可能有多个原因,我只领教过一个引入的三方包存在相同的label,icon,name等字段,需要在app下的gradle文件中的application标签中声明 tools:replace="label,allowBack...

2020-02-17 20:32:57 276 1

原创 LeetCode——1266. 访问所有点的最小时间(切比雪夫距离)

平面上有 n 个点,点的位置用整数坐标表示 points[i] = [xi, yi]。请你计算访问所有这些点需要的最小时间(以秒为单位)。你可以按照下面的规则在平面上移动:每一秒沿水平或者竖直方向移动一个单位长度,或者跨过对角线(可以看作在一秒内向水平和竖直方向各移动一个单位长度)。必须按照数组中出现的顺序来访问这些点。示例 1:输入:points = [[1,1],[3,4],[-1...

2019-12-06 11:44:23 365

原创 LeetCode——LCP 2. 分式化简

有一个同学在学习分式。他需要将一个连分数化成最简分数,你能帮助他吗?连分数是形如上图的分式。在本题中,所有系数都是大于等于0的整数。输入的cont代表连分数的系数(cont[0]代表上图的a0,以此类推)。返回一个长度为2的数组[n, m],使得连分数的值等于n / m,且n, m最大公约数为1。示例 1:输入:cont = [3, 2, 0, 2]输出:[13, 4]解释:原连分数...

2019-12-05 00:03:59 228

原创 LeetCode——190.颠倒的二进制位

颠倒给定的 32 位无符号整数的二进制位。示例 1:输入: 00000010100101000001111010011100输出: 00111001011110000010100101000000解释: 输入的二进制串 00000010100101000001111010011100 表示无符号整数 43261596, 因此返回 964176192,其二进制表示形式为 0011...

2019-11-27 19:03:48 161

原创 LeetCode——168.Excel表列名称

给定一个正整数,返回它在 Excel 表中相对应的列名称。例如,1 -> A2 -> B3 -> C…26 -> Z27 -> AA28 -> AB…示例 1:输入: 1输出: "A"示例 2:输入: 28输出: "AB"示例 3:输入: 701输出: "ZY"预备知识:十进制转换为二进制:短除法——————————...

2019-11-24 12:19:36 170

原创 LeetCode——验证回文串(125)

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"输出: false分析:这里有三个要点,一是将字符串中除了字符和数字以外的字符都替换掉,二是比较时需要忽略字母的...

2019-11-22 22:33:01 103

原创 LeetCode——merge(合并两个数组)(88)

88.给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = ...

2019-11-20 13:15:09 326

原创 LeetCode——爬楼梯-70

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。4. 1 阶 + 1 阶 + 1 阶5. 1 阶 + 2...

2019-11-18 22:08:37 125

原创 2.sleep和wait的区别?

sleep和wait的区别?因为wait方法需要在Synchronized块或者Synchronized方法中执行,所以我们先来复习一下什么是SynchronizedSynchronized:synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程(例如线程A),运行到这个方法时,都要检查有没有其它线程B(或者C、 D等)正在用这个方法(或者该类的其他同步方法),有的话要等正在...

2019-11-11 22:31:41 657

原创 1.抽象类与接口的区别?

抽象类中可以有抽象方法和非抽象方法,接口中的所有方法都是抽象的,实现一个接口时,接口中的抽象方法都要被重写抽象类不能被普通类多继承(Java类只能单继承),但接口可以多实现抽象类中可以有构造方法、静态代码块和静态方法,接口中没有构造方法、静态代码块和静态方法抽象类中的变量可以是各种各样的的,接口中不能含有成员变量,除了final和static变量抽象类和接口都不能被实例...

2019-11-09 15:45:07 6035 7

原创 错误与异常——no address associated with hostname(没有与主机名关联的地址)

no address associated with hostname原因1:没有在注册表中声明网络权限解决方式:在注册表中声明网络权限(AndroidManifest.xml) <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/...

2019-10-18 15:49:02 11527 2

原创 LeetCode—— 有效的字母异位词

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false说明:你可以假设字符串只包含小写字母。字母异位词:由相同的字母按照不同的顺序组成的单词按照这种规则,可以判断这两个单词的长度相等,...

2019-10-13 00:43:22 133

原创 Android——在Button中添加图片的同时添加文字(不覆盖)、无边界Button

觉得添加按钮又添加文字太麻烦又不美观?想要把展示的都放在按钮上?可以吗,当然可以。实现效果这是两个按钮实现代码<Button android:id="@+id/select_land" //id android:textColor="@color/colorText" //字体颜色 android:back...

2019-10-11 11:55:34 6114 2

原创 错误与异常:failed linking references./ Android resource linking failed

错误提示:Android resource linking failed翻译为:安卓资源链接失败failed linking references翻译为:连接引用失败问题分析:应该首先考虑你在XML文件中的调用(图片、颜色等)是否还存在或者有效(是不是改过了名字或者删除了)解决:打开已经创建的XML文件,查看是否有无效的调用错误记录错误提示:查看XML文件时候发...

2019-10-11 11:40:35 6623

原创 Android——更改colorPrimaryDark颜色的方法

colorPrimaryDark代表屏幕最上方的那一小块区域这两部分的内容都可以被更改方法一:在app/scr/res/values/colors中可以定义颜色属性,然后在app/scr/res/values/styles中可以直接在所需更改的部分调用相应的定义好的颜色colors.xml<?xml version="1.0" encoding="utf-8"?><...

2019-10-07 21:36:40 10454 1

原创 问题记录(未解决)——RecyclerView适配器中的泛型指定

学习了ListView控件之后,接着开始了RecyclerView控件的探索,在学习得过程中发现了些不理解的问题,贴出代码和问题做些记录。这是RecyclerView的适配器部分没有贴出的部分有Brother类(定义了照片和姓名)主布局和子项布局主方法public class BrotherAdapter extends RecyclerView.Adapter<Brother...

2019-09-29 19:57:27 382 2

原创 Android——getView(int position,View convertView,ViewGroup parent)参数理解

在定义自己的适配器时,要重写getView()方法,该方法的原型为:getView(int position,View convertView,ViewGroup parent)该方法中的三个参数分别是什么意思,起到什么作用呢?int position翻译为:位置作用:判断当前显示的项目在屏幕上的位置,然后通过position在定义的集合中取值显示在屏幕上View convert...

2019-09-27 14:08:41 3480

原创 java——关于定义的变量作为参数传递后原变量是否会被更改

关于方法中的参数,看到过这样一句话:被传递进去参数永远都只是副本,不论副本经过了再怎样的变化,只要不接收,原件永远都不会发生改变。最近看到了几道题目刷新了我对这句话的认识:这句话是不对的,或者说是不完全对的。对于传递的基本数据类型(int 、byte等)来说,传递的参数的确像是副本一样,对原件没什么影响,但是如果传入的参数是原件的地址,那在传入参数的方法中改变的就是地址中的数据,也就是说,原件...

2019-09-26 21:37:45 1035

原创 问题记录(已解决)——WebView的用法中,webview.setWebViewClient()方法有什么作用?

在学习webview的用法时候,MainActivity中有这样一段代码public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceS...

2019-09-24 20:11:45 2726 1

原创 C语言——typedef

typedef为基本数据类型取一个新的名字type int size; //表示给int这个数据类型提供了一个叫作“size”的名字,可以在任何需要调用int的时候用size调用为用户自定义的数据类型取一个新的名字typedef struct{ //typedef代表给结构体(struct)类型重新命名为Stu string name; int age; }...

2019-09-09 21:24:47 111

原创 Leetcode——字符串中的第一个唯一字符

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2.注意事项:您可以假定该字符串只包含小写字母。思路分析:需要逐次使用串中的单个元素和其余的元素比较(内外两层循环),设置一个布尔类型的变量(初始化为false(默认为无重复元素)),在比较的过程中,一旦发现...

2019-09-07 14:17:46 216

原创 Leetcode——整数反转

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。思路:举个例子,123倒序输...

2019-09-06 00:10:57 72

原创 Leetcode——买卖股票的最佳时机 II

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获...

2019-09-05 00:31:17 113

原创 Android——Handler、Message类(UI更新——异步消息处理)

Android不允许在子线程中进行UI的操作,但是有些时候我们确实需要在子线程中执行一些耗时的任务来更新UI,这时候就需要用到解析异步消息处理机制来完成操作。异步消息处理包括:MessageHandlerMessageQueueLooper该文章主要介绍Message和HandlerMessage在线程之间传递信息,将少量的信息在不同的线程之间交换。(发送给Handler)M...

2019-09-03 19:20:35 494

原创 java基础——接口

接口的概念接口是从多个相似类中抽象出来的规范通俗来讲,是在接口中定义方法而不定义方法体(都是抽象方法),再通过类对接口的继承来具体的实现这些方法。这时候接口的定义就像一张工程蓝图,去告知类有哪些事情需要去做。抽象类中定义的也是抽象方法,同样也可以通过继承抽象类来具体实现方法,为什么要用接口呢?抽象类虽然可以被继承,但是不能多继承(可以间接多继承,B继承A,C继承B),在某种程度...

2019-08-28 19:12:00 111

原创 java基础——堆和栈

Java程序在运行前都要为程序开辟空间,JVM(java虚拟机)内存的划分分为5个部分:寄存器本地方法区方法区栈内存堆内存栈内存一种运算受限的线性表。限定只能在表尾进行插入和删除操作的线性表。用于存储局部变量(栈的生命周期短是因为变量都有自己的作用域,一旦离开作用域,变量就会被释放,也因此栈内存的更新速度很快)堆内存存储数组和new出来的对象。堆中的内存不会像栈中的数据被随...

2019-08-25 16:22:25 106

原创 java基础——类变量与实例变量、类方法与实例方法

类变量与实例变量在类中被static修饰的变量属于类,称为类变量不被static修饰的变量成为实例变量类变量属于类本身,不属于该类的单个实例。类变量是所有对象共有,它的值只要被其中一个对象改变,其他对象得到的值就是被改变后的值。而实例变量属于对象私有,某一个值被一个对象改变,该值就只在该对象中起作用。public class Classmate { static String ...

2019-08-24 20:51:24 878

原创 java基础——多态

多态(多种状态):多态是继封装、继承之后,面向对象的第三大特性。理解:就像一个人会打乒乓球、会做饭,做饭与打乒乓球就是这个人的两种状态前提:必须有子父类的关系(继承、重写)体现:父类引用指向子类对象(向上转型)注意:子类对象调用重写的方法时,调用的是子类对象中的方法举例验证父类和子类对象对于重写方法的调用 *在Employee(父)类中定义 mailCheck方法,让类Sala...

2019-08-23 23:41:25 100

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除