Android开发学习-1

Android开发学习 - 基于Android Studio 4.0.1创建第一个安卓程序 长期从事嵌入式设备开发,感觉有些单一和枯燥,想拓展一下知识面,学习一下Android开发,说不定以后也可以用得上。 (请自行安装Android Studio) 1. 打开Android Studio, 创建新的工程,start a new project. 接下来会出现下面的画面, 选择“Basic Activity” -> “Next”. 2. 输入Project Name, 选择语言(Java), 然后选择Finish. 3. 选择“Device for Preview”, 然后“Add De 阅读详情

Android应用开发学习已经一年多了。写点笔记笔记。方便以后自己用。
回忆:
开始,java语言的学习,首先搭建java环境(jdk:http://java.sun.com),从测试javac、java命令开始,环境的搭建、eclipse创建的第一个项目一句简单的system.out.print("hellow world");  跟学c语言一样的历程。
java语言学习:依然是基本的变量类型开始学习

八种基本类型:

byte;int (2147483647最大);short;long;float  32位;double   64位;char、字符类型;boolean布尔值0 1; 
变量必须声明。并且初始化才能用;

 

定义数组int []aa=new int[];

错误的:

Public static void main(string[] args)

{

string name; 

system.out.println(name);会报错、编译有问题。

}

正确:

Public static void main(string[] args)

{

string name=null; 

system.out.println(name);

}

如果把name放在public static……上面。则不能用、是的,静态函数只能访问自己里面的。

System.out.print(integer .toinarystring(i));转换成binary;

System.out.Print(integer.tohexstring(i));转换成十六进制;

数字“0”x即(0x)表示十六进制的数;

Float转换成int精度损失:int精度比float高;

public class aa {

public static void main(String[] args){

int x=0x7fffffff;

int y=0x7ffffff0;

System.out.println(x-y);

float m=x;

float n=y;

System.out.println(m-n);

}

}

Double转换成int精度不会损失。说明double精度比int高
Char 、int 、long 、float、double
强制转换就在前面加如:(int)I; (byte) I;

System.out.println((int)i);

控制台输入:

 Math函数;

随机数;

random r=new random();

for(int i=0;i<10;i++)

{

System.out.print(r.nextint(20))//随机数从了、0到19 

}

 

随机输出4个A——Z的字符

public static void main(String[] args) {

int []aa=new int[26] ;

int j=0;

Random d=new Random();

/* for(int i=0;i<26;i++){

     aa[i]=i+65;

     //System.out.println(aa[i]);

}*/

Random ran=new Random();

for(int i=0;i<4;i++){

System.out.println((char)aa[ran.nextInt(26)]);

}

Java运算符。If(){}else{}   witch case;  for ();  do{}while{} ;  while     
 “=”赋值;“==”等于;%取余数;Break;终止循环 continue;跳过本次循环“++”自加。

Int i=1

System.Out.Print(i++);输出的是1.先输出再计算;

System.out.Print(++i);输出的是2.先计算再输出;

自减也是如此

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

System.out.println ("输入一个数");

int num=sc.nextInt();

int sum=num*(num+8);

System.out.println(sum);

}//float.double类型的也可以。

 

一、java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象。常用的类有BufferedReader,Scanner。
实例程序:
1、利用 Scanner 实现从键盘读入integer或float 型数据

//import java.io.*;
import java.util.*;
public class InputTest{
public static void main(String[] args){
   Scanner in = new Scanner(System.in);    //Scanner类
   System.out.println("Please input a float number:");
  float a = in.nextFloat();    //接收float数据
   System.out.println("Please input a string: ");    //这里试了一下输入String数据,但中间有空格就不能显示,Scanner类还不具有这功能
   Scanner str = new Scanner(System.in);
   System.out.println("The string is :" + str.next());
   System.out.println("The float number is: " + a);
   for(int i = 0;i < 4;i++){
    System.out.println("Please input a int number: ");   //for循环接收int型数据
    int b = in.nextInt();
    System.out.println("The int number is: " + b);
   }
}
}
2、利用 BufferedReader实现从键盘读入字符串并写进文件abc.txt中

import java.io.*;
public class InputTest{
public static void main(String[] args) throws IOException{
    BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
    BufferedWriter buf2 = new BufferedWriter(new FileWriter("abx.txt"));
     String str = buf.readLine();
     while(!str.equals("exit")){
    buf2.write(str);
    buf2.newLine();
    str = buf.readLine();
   }
  buf.close();
  buf2.close();
}
}

关于JDK1.5 Scanner类的说明

Scanner是SDK1.5新增的一个类,可是使用该类创建一个对象.
Scanner reader=new Scanner(System.in);

然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型:
next.Byte(),nextDouble(),nextFloat,nextInt(),nextLine(),nextLong(),nextShot()
使用nextLine()方法输入行中可能包含空格.如果读取的是一个单词,则可调用.next()方法

3、Scanner和BufferedReader的区别
在命令行模式下要输入数据至程序中时,我们可以使用标准输入串对象System.in.但是,我们并不经常直接使用它,因为System.in提供的 read方法每次只能读取一个字节的数据,而我们平时所应用的通常是读取一个字符串或者是一个数字,所以read方法所以提供的功能,对我们来说并没有太大的用处.
在Java SE 6中,可以使用Scanner类取得用户的输入,Scanner类位于java.util包中,如果你要使用Scanner取得用户输入的话,要加上 import java.util.Scanner;这条语句.import的功能是告诉编译器,你将使用java.util包中的Scanner类.
我们来看一个例子:
import java.util.Scanner;
public class TestScanner{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个字符串:");
System.out.println("您输入的字符串是:" + scan.next());
}
}

运行上面的程序,你将会看到你输入的字符串将在下面原样显示出来.
我们来看看这个程序中每条语句的意思:
new是创建一个对象,程序中new的意思是创建了一个Scanner类的对象scan.但是在创建Scanner类的对象时,需要用System.in 作为它的参数,也可以将Scanner看作是System.in对象的支持者,System.in取得用户输入的内容后,交给Scanner来作一些处理.
Scanner类中提供了多个方法:
next():取得一个字符串;
nextInt():将取得的字符串转换成int类型的整数;
nextFloat():将取得的字符串转换成float型;
nextBoolean():将取得的字符串转换成boolean型;

用Scanner获得用户的输入非常的方便,但是Scanner取得输入的依据是空格符,包括空格键,Tab键和Enter键.当按下这其中的任一键时,Scanner就会返回下一个输入. 当你输入的内容中间包括空格时,显然,使用Scanner就不能完整的获得你输入的字符串.这时候我们可以考虑使用BufferedReader类取得输入.其实在Java SE 1.4及以前的版本中,尚没有提供Scanner方法,我们获得输入时也是使用BufferReader的.
BufferedReader类位于java.io包中,所以要使用这个类,就要引入java.io这个包:import java.io.BufferedReader.
使用BufferedReader对象的readLine()方法必须处理java.io.IOException异常(Exception).
使用BufferedReader来取得输入,理解起来要复杂得多.但是使用这个方法是固定的,每次使用前先如法炮制就可以了.
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
String text = buffer.readLine();
readLine()方法会返回用户在按下Enter键之前的所有字符输入,不包括最后按下的Enter返回字符.
完整的示例程序如下:
import java.io.BufferedReader;
public class TestBufferedReader{
public static void main(String[] args) throws IOException{
BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一串字符串");
String text = buffer.readLine();
System.out.println("您输入的字符串是:" + text);
}

}
4、如下面的程序所示:class StringTest
{
public static void main(String[] args)
{
System.out.println(args[0]);
System.out.println(args[1]);
System.out.println(args[2]);
}
}

在执行语句即:java + 类名后面输入内容,即会被args接收,因为args是接收命令行参数的。

Int i=11;

If(i>0){}Else if(i==11){}else{}

则。I==11.不执行;

 

Switch(i){

Case 1:system.out.println(“”);Break;

Case 2:system.out.println(“”);break;

Default:

}//1 2  为i的值;

 

没有break则从符合case开始一直执行,执行到最后;

Default不要放前面。

For(int i=0;i<100;i++){}

Scanner sc=new scanner(system.in);

Int aa=sc.nextInt();

For(int i=1,j=aa;i<aa;i++,j--){

}多个条件判断语句;

While(i<100){

i++;

system.out.println(“好好学习”);

if(i==50){break;}//50次的时候终止循环;

}

Scanner sc=new scanner(system.in);

String info=sc.next();

While(info.equals(“yes”)){

System.out.println(“合格了”);

System.out.print(“合格了么?(y/n)”);

Info=sc.next();

}//判断输入的是不是yes

 

system.Out.print输出是黑色的字体、System.err.println输出的是红色字

 

srting aaa; 定义一个字符变量

!取反运算;

While(!aaa){

}

当不是aaa的时候执行;




5分钟搞定:用Pyannote和Whisper实现带说话人分离的语音转文字(附完整代码) 本文详细介绍了如何快速构建一个集成了说话人分离功能的语音转文字系统。通过结合OpenAI的Whisper模型进行高精度语音识别和Pyannote模型实现说话人分离,并提供了完整的代码实现、环境搭建指南以及核心的对齐与合并逻辑,帮助开发者高效处理会议录音、访谈等多说话人音频,实现自动化转录。 阅读详情

相关推荐

电商智能客服Agent开发实战:从零到一构建企业级AI助手

电商智能客服Agent是下一代AI应用的核心形态,它不仅能够回答用户问题,还能自主规划任务、调用工具并执行完整工作流程。本文将深入探讨AI Agent的基本概念、技术实现方式及电商场景中的应用,提供完整的开发流程和代码示例,帮助开发者从零开始构建一个功能强大的电商智能客服系统。通过模块化设计、多轮对话记忆管理和工具集成,这个Agent能够处理订单查询、商品推荐、退换货流程等复杂任务,同时具备企业级的安全性和稳定性保障。通过本文的介绍,读者已经掌握了构建电商智能客服Agent的核心技术与实现方法。

m0_64363449的博客 1361

Android基础入门

Android Studio使用

IT瘾君子的博客 2019

AutoSAR系列讲解 - 资料下载

学习资料下载汇总

雪云飞星的博客 4万+

第一行代码Android----阅读笔记(第二章 探究活动_1)

主要包括Activity的基本用法以及Intent的用法

zx1026409886的博客 1062

在jetson上对fastdeploy进行源码编译(完整版)

在大多数Linux发行版中,你可以使用包管理器安装Python开发包。根据jetpack的版本选择对应的推理库版本。在~/.bashrc中写入这三行。

如果想成为中心,那么就到中心去吧。 678

AUTOSAR进阶图解==>AUTOSAR_SWS_CANStateManager

AUTOSAR CAN状态管理器(CanSM)摘要 CanSM是AUTOSAR通信栈中的关键模块,负责管理CAN网络状态和模式转换。主要功能包括: 控制CAN控制器/收发器工作模式(STARTED/STOPPED,NORMAL/STANDBY) 处理三种网络状态(全通信、静默通信、无通信)之间的转换 监控和处理总线关闭(Bus-Off)事件 与ComM、CanIf、BswM等模块协同工作 CanSM通过状态机管理网络状态转换,支持可配置的总线关闭恢复策略。它为每个CAN网络维护独立的状态机,实现网络状态的精

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 5579

笔试面试题集(java)

前言 本书为自己的面试试题和收藏自认为比极好的题目,整理归类在word文档中。然后复制到csdn中,涵盖了java面试中出现的各个知识点,包括java语言基础、数据库、web编程、框架等。其中每个部分都按小知识点进行笔试面试题整理,并在题后紧跟详细的分析步骤和解答。 目录 前言 第一部分:JAVA基础 1.1 JAVA语言基础 1.2 JAVA面向对象 1.3 JAVA核心API

csdnZCjava的博客 3万+

本地部署AI应用:基于Google Gemini的banana-prompt快速上手指南

AI应用开发的核心在于将大模型能力集成到实际场景中,其原理是通过API调用将用户输入转化为模型可理解的指令,再由模型生成响应。这一技术价值在于降低AI应用开发门槛,实现数据本地化处理与隐私保护。在工程实践中,开发者常面临环境配置复杂、API集成繁琐等挑战。本文聚焦于使用banana-prompt工具包,通过TypeScript技术栈和npm包管理,快速在Windows本地部署基于Google Gemini API的AI应用。该方案特别适用于ai-prompts提示词工程和content-creation内容

weixin_27188815的博客 316

安卓开发sdk android8.1_鸿蒙开发程学习(1)

自己也尝试一下学习鸿蒙开发程序安装程序安装license agreement确认自动安装sdk安装sdk文件安装完成了sdk和程序安装完成需要手动配置node.js建立一个程序,但是缺少node.js,所以自己手动安装安卓的adbwinapi动态库查看鸿蒙的动态库对比鸿蒙的hdcwinapi动态库,是不是很相似鸿蒙的动态库和安卓的动态库很相似将鸿蒙的sdk里面的lib目录改名尝试一下修改sdk里面...

weixin_33529455的博客 937

基于TKVA与深度学习的量子点微型光谱仪光谱重建改进算法研究

本文提出了一种融合深度学习的改进TKVA算法(TKVA-DL),用于提升量子点微型光谱仪的光谱重建精度。该方法创新性地结合深度先验网络与注意力机制,通过自适应学习光谱隐式先验替代传统固定正则化项,并动态加权探测器响应通道。实验表明,所提方法在仿真和实测数据上均显著优于传统TKVA及主流深度学习算法,RMSE降低35%,PSNR提升4.2 dB,同时保持物理可解释性。完整MATLAB实现验证了方法的有效性与可复现性,为微型光谱仪的高精度重建提供了新思路。 关键词:量子点微型光谱仪;光谱重建;Tikhonov正

AI的内部世界的博客 83

Python全栈入门到实战【基础篇 04】核心基础:变量与4种基础数据类型(int/float/str/bool)

本文介绍了Python编程中的变量和四种基础数据类型,作为后续所有语法的入门前提。变量是数据的“容器”,解决数据复用问题,而数据类型决定数据能进行的操作。文章详细讲解了变量的定义语法、命名规则(强制语法和推荐风格)、赋值与修改原理,并通过实操示例展示其应用场景。正确使用变量可以提升代码复用性、简化修改并增强可读性,是编程效率的核心原则。掌握这些基础知识能避免90%的新手语法错误,为学习更复杂的Python语法打下坚实基础。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 4315

安卓学习之路1之android开发环境的搭建

(此文件为本人android学习之路的总结,属于基础;如果有错误,欢迎指正)  搭建android应用开发环境需要搭建以下工具 1.JDK(Java Development kit) 2.Eclipse 3.Android SDK(Software Development kit) 4.ADT(Android Development Tools) 1.JDK安装 (1)JDK

zhenfulin的博客 537

Python-自动化绘制股票价格通道线

创建更强大、更可靠的价格通道检测算法。

探索人工智能领域 948

Android安卓初级开发培训学习笔记1——绪论

最近在看网易云课堂的一个课,讲安卓的。虽然看起来年代久远,但是内容挺有意思的。特别基础,算是雨露均沾了。 下面是他的网址 http://study.163.com/course/courseMain.htm?courseId=1005651019 他的内容是 章节1ANDROID的认识 课时1ANDROID的认识19:22 章节2Android开发环境搭建和SDK了解 课时2An...

wsdchong的博客 903

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

安卓学习(1)——搭建安卓开发环境:Eclipse+ADT+Android SDK

Eclipse+ADT+Android SDK 搭建安卓开发环境 安装JDK 这里可以参考我之前写的一篇关于安装JDK的教程, 请看下面链接吧。 http://www.cnblogs.com/j839035067/p/6566151.html 安装Eclipse Ec...

growupquickly 2万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Android13 开发学习1—安卓工具链

安卓开发学习

TBYang的博客 219

2024年安卓最全如何在Android开发中让你的代码更有效率(1),Android开发全套学习

最后这里放上我这段时间复习的资料,这个资料也是偶然一位朋友分享给我的,里面包含了腾讯、字节跳动、阿里、百度2020-2021面试真题解析,并且把每个技术点整理成了视频和PDF(知识脉络 + 诸多细节)。还有高级架构技术进阶脑图、高级进阶架构资料帮助大家学习提升进阶,这里我也免费分享给大家也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。一起互勉~网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

2401_84556564的博客 419

c语言安卓驱动开发,android驱动学习1-驱动开发流程(Android.mk)

QQ:971586331软件环境:操作系统:windows 10IDE版本:Android Studio 3.4.2JAVA版本:jdk-8u221-windows-x64NDK版本:android-ndk-r20-windows-x86_64Kernel版本:linux 3.0开发板android版本:android 4.0.3硬件环境:开发板:itop-4412精英版本文内容:本文描述了如何...

weixin_39529128的博客 975

安卓开发学习1

1.开发需要环境 首先安卓SDK支持多种语言,只是java的支持较先推出,使用比较多 需要去谷歌下载ADT,还有eclipse,jdk。然后把ADT作为eclipse插件装入。 2.安卓项目结构简介 src - 存放代码文件 gen - xml和代码的中转文件,由程序自动生成。不用去修改 assets - 资源目录 bin - 输出目录,不用去修改 AndroidM...

dongfushu7972的博客 107

安卓学习 Day1:安装配置Android Studio 开发环境

安卓学习笔记,第一天。

zs18384022951的博客 678

Android 时间戳学习笔记(1),2024年是做安卓开发人员的绝佳时机

↳↳↳SimpleDateFormat是一个以国别敏感的方式格式化和分析数据的具体类。它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。

m0_58269070的博客 753

安卓开发学习——day1

今天是学习安卓的第3天 由于以前没有接触过安卓,这几天的学习就像盲人过河,看一点写一点。对于安卓的了解不是很深入。 这几天主要用到的布局就是线性布局:LinearLayout GridLayout 控件主要使用到的是:TextView ImageButton EditView 遇到的问题也很多,比如按比例布局这些,经过百度查找: 将外层的线性表,添加: android:orientation="vertical" 将线性布局设置为水平 内部,添加: android:latyout_heig.

观山奇的博客 4101

安卓开发学习1-HelloWorld

配置gradle过程中会出现报错:原因是下载官方gradle失败。不影响正常使用,因为已经在镜像gradle下载过了。可以正常运行文件。

weixin_55715269的博客 1108

基于安卓的App开发初步学习(开发软件Android Studio)**1**

一·初步认识 现在手机的使用越来越频繁,要想跟上时代的潮流,必须要了解这些技术。 开发软件使用的是Android Studio 创建一个工程项目,一个基本的项目包含的如上图,像类似于java中的类,函数等放在src/main/java/下, res中的drawable放的是一些图片素材,layout放的是一些xml配置文件values存放一些变量的值 strings.xml可以给一些变量赋...

qq_40310816的博客 1653

2024年安卓最新JetPack下DataStore学习(1),2024年最新0基础学android开发

现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!一共十个专题,包括了Android进阶所有学习资料,Android进阶视频,Flutter,java基础,kotlin,NDK模块,计算机网络,数据结构与算法,微信小程序,面试题解析,framework源码!键值对数据,适合存储简单、小型的数据,并且不支持局部更新,如果修改了其中一个值,整个文件内容将会被重新序列化,

2401_84545088的博客 1053

安卓开发学习问题1:Android Studio下载出现HTTP ERROR 400

问题描述 原因分析 无 问题解决 直接将下载地址放到迅雷下载

qq_43967413的博客 946

安卓开发学习1:安卓开发资源与方法总结

开发工具下载地址下载问题安装教程Android Studio配置镜像Genymotion个人免费版安装教程开发指南教程 开发工具 下载地址 Android Studio下载 下载问题 可能出现一下问题 直接将下载地址放到迅雷下载就可以了 安装教程 安装教程 Android Studio配置镜像 『2020最新』Android Studio Gradle下载慢问题,配置Gradle及更换阿里云镜像 Genymotion个人免费版安装教程 『2020最新』Genymotion个人免费版安装教程及配置到A.

qq_43967413的博客 930
下一篇: android开发学习-2
记着
博客等级 码龄16年 0粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值