【2018-7-23】【day01】

本文介绍了计算机的基本概念,包括位与字节的关系、不同存储单位之间的换算、命令提示符的基本操作命令、Java程序的运行环境及开发环境、编程中的注释方法、标识符的命名规范与数据类型的详细说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

  1. 电脑上的计算器可以直接进行进制转换。
  2. 1)位(bit):一个数字0或者1,代表一位。

 2)字节(Byte):每逢8位是一个字节,数据存储的最小单位

·1 Byte = 8 bit

·1 KB = 1024 Byte

·1 GB = 1024 MB

·1 TB = 1024 GB

3. MS-DOS → Windows 命令提示符(cmd)

4.正斜杠/ 反斜杠\

5.命令提示符:

  1. 启动:Win+R
  2. 切换盘符: C:  D:(不区分大小写)
  3. 进入文件夹 cd 文件夹名称
  4. 进入多级文件夹 cd 文件夹\文件夹2
  5. 返回上一级 cd ..
  6. 直接回根路径(CD盘之类) cd \
  7. 查看当前内容 dir
  8. 清屏 cls
  9. 退出 exit

6.Java程序是跨平台的。

运行:JRE 开发:JDK 核心:JVM

7.注释方法:

//单行注释

/* 注释内容 */

8.class后面的单词必须和所在文件名称完全一样,区分大小写。

第二行不变,表示程序的起点。

  1. 关键字的特点:
  1. 完全小写字母
  2. 增强版的记事本中(如notepad++)有特殊颜色。
  1. 标识符:
  1. 不能用关键字。
  2. 不能以数字开头。
  3. 可以包含英文字母(区分大小写),0-9数字,美元符号和下划线。
  1. 命名规范:
  1. 类名:首字母写,后面每个单词首字母大写。
  2. 变量名:首字母写,后面每个单词首字母大写。
  3. 方法名:同2)

字符是单引号,字符串是双引号。空常量不能直接打印输出

  1. 数据类型:

基本数据类型(括号内为内存占用多少个字节)

(整数型[byte(1) short(2) int(4) long (8)]、

浮点型[float(4) double(8)]、

字符型[char(2)]、

布尔型[boolean(1)])和

引用数据类型(字符串、数组、类、接口、Lambda)。

byte的范围是-128-127

int 的范围是-2^31~2^31-1

  1. 数据类型注意事项:
  1. 字符串不是基本类型
  2. 浮点型可能只是一个近似值并非精确值
  3. 数据范围与字节数不一定相关
  4. 浮点数默认类型是double,如果一定要用float,需要加一个后缀F。

如果是整数,默认int,如果一定要long,后面加一个后缀L。

  1. 变量必须要赋值以后才能使用。Float 和 long 类型的后缀不要丢掉。
我想编写一个udaf,实现: 假设用户表记录 工号(empid) 名称(name),自然日(date),如果上班就有数据 在hive中编写udaf,要求压缩每个员工2018年的全部考勤记录分别压缩在2进制数字里, 1表示工作,0表示没有工作最后存储为100010000......00000111这样的格式, 第一位代表第一天,第二位代表第二天...第N位代表第N天,最后存入user_info_zip表里 存入zip_record里,3个字段,empid,name,zipDates(上班日期压缩) 表 user_info_zip(压缩表) empid name zipDates 111 张三 0001...000 222 李四 0000...001 表B (原始表) empid name date 111 张三 '2018-01-03' 222 李四 '2018-01-05' 代码如下: package com.example.hive.udaf; import org.apache.hadoop.hive.ql.exec.UDAF; import org.apache.hadoop.hive.ql.exec.UDAFEvaluator; import org.apache.hadoop.io.Text; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.BitSet; /** * 将员工2018年出勤日期压缩为二进制字符串的UDAF * 每位代表一天:1=工作,0=未工作 */ public class AttendanceCompressor extends UDAF { public static class Evaluator implements UDAFEvaluator { // 2018年总天数 private static final int DAYS_2018 = 365; // 2018年第一天的时间戳 private static final long FIRST_DAY = getDay("2018-01-01"); // 使用BitSet存储每天的出勤状态 private BitSet attendance; // 初始化评估器 @Override public void init() { attendance = new BitSet(DAYS_2018); } // 处理每行输入的日期 public boolean iterate(Text dateStr) { if (dateStr != null) { long day = getDay(dateStr.toString()); // 只处理2018年的有效日期 if (day >= 0 && day < DAYS_2018) { attendance.set((int) day); // 设置对应位为1 } } return true; } // 返回部分聚合结果 public BitSet terminatePartial() { return attendance; } // 合并多个部分结果 public boolean merge(BitSet other) { if (other != null) { attendance.or(other); // 按位或合并 } return true; } // 返回最终二进制字符串结果 public Text terminate() { StringBuilder sb = new StringBuilder(DAYS_2018); // 生成365位二进制字符串 for (int i = 0; i < DAYS_2018; i++) { sb.append(attendance.get(i) ? '1' : '0'); } return new Text(sb.toString()); } // 计算日期相对于2018-01-01的天数偏移 private static long getDay(String dateStr) { try { long time = new SimpleDateFormat("yyyy-MM-dd").parse(dateStr).getTime(); return (time - FIRST_DAY) / (24 * 60 * 60 * 1000); } catch (ParseException e) { return -1; // 日期格式错误时返回-1 } } } } 我这样写对吗?只需要告诉我对不对,最终能不能使用这个函数即可
07-03
内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值