str函数

超简单、超容易理解的随机纯字母生成器,传入要生成的随机数的位数即可(大小写字母混合)

喜夏-厌秋 提交于 2020-03-10 08:28:08
代码: import java.util.Random; public class RandomLetterUtil { public static String getRandomCode(int size) { // 传入要生成的随机数的位数 Random random = new Random(); String str = ""; for (int i = 0; i < size; i++) { int key = random.nextInt(2); switch (key) { case 0: char code1 = (char) (random.nextInt(26) + 65); str += code1; break; case 1: char code2 = (char) (random.nextInt(26) + 97); str += code2; break; } } return str; } // 主函数测试 public static void main(String[] args) { int size = 100; String randomCode = getRandomCode(size); // 传入要生成的随机数的位数 System.out.println("随机生成的"+size+"位数为:"+randomCode); } } 效果图

[实验7]流类库与输入输出

给你一囗甜甜゛ 提交于 2020-03-10 04:48:58
一、实验目的 理解流的概念 熟悉流类库中常用的类及成员函数用法 熟悉 I/O 格式控制方法,掌握常用格式控制 了解文件 I/O,掌握文件 I/O 基本用法 二、实验准备 结合第 11 章教材、课件,复习/学习如下内容: 1.基础知识 (1)流是什么?如何理解? (2)C++ 中 I/O 是通过什么来实现的? (3 )常用 I/O 流类的继承/派生层次关系 (4 )预定义标准流对象 cin, cout, cerr, clog 2.C++中格式化 I/O 方法 3.文件 I/O 方法及常用成员函数 三、实验内容 1.基础练习 (1)教材习题 11-7 (2)教材习题 11-3 (3)教材习题 11-4 2.应用练习 (1)已知有班级名单文件list.txt(见实验 7 附件包)。编写一个应用程序实现随机抽点 5 位同学,在屏幕上显示结果,同时,也将结果写入文件 roll.txt。 ① 编写程序实现题目基本功能要求。(必做) ② ******选做******) 对 ①中实现的基本功能进行完善、扩充,使得这个点名应用程序更灵活、更方便。比如: a) 从键盘输入班级文件名,支持对不同班级的点名操作; b) 从键盘输入用于保存点名结果的文件名。更灵活地,自动获取当前系统日期作为文件名,比如 20180612.txt。(如果希望更细粒度,文件名可以到小时和分钟这一层级); c)

Java8 新特性_Lambda 表达式

允我心安 提交于 2020-03-10 04:23:02
1. Java8新特性_简介 Lambda 表达式 函数式接口 方法引用与构造器引用 Stream API 接口中的默认方法与静态方法 新时间日期 API 减少空指针异常的容器 Optional 2. Java8新特性_为什么使用 Lambda 表达式 减少实现功能的代码行数,增加源码的可读性。 导入项目代码后,发现有感叹号提示丢失jdk依赖的解决。 导入项目代码后,发现有源码中文注释乱码的解决。 Employee是一个实体类,具有id、name、age、salary成员属性,需求是实现根据一些限定条件对容器进行检索并打印输出。 public class Employee package com.atguigu.java8; public class Employee { private int id; private String name; private int age; private double salary; public Employee() { } public Employee(String name) { this.name = name; } public Employee(String name, int age) { this.name = name; this.age = age; } public Employee(int id, String

php获取字符串长度函数strlen和mb_strlen

风格不统一 提交于 2020-03-10 04:22:23
php获取字符串长度函数strlen和mb_strlen count() - 计算数组中的单元数目,或对象中的属性个数 strlen — 获取字符串长度,一个汉字为3个字符 mb_strlen() - 获取字符串的长度 ----------- int strlen ( string $string ) 成功则返回字符串 string 的长度;如果 string 为空,则返回 0。 范例 <?php $str = 'abcdef'; echo strlen($str); // 6 $str = 'abcdef中国'; echo strlen($str); // 12 echo mb_strlen($str);//12 echo count($str);//1 $str = ' ab cd '; echo strlen($str); // 7 ?> 注意: strlen() returns the number of bytes rather than the number of characters in a string. strlen() returns NULL when executed on arrays, and an E_WARNING level error is emitted. 代码在线运行 - 在线工具 http://tool.lu/coderunner/ 来源

php中安全补充

左心房为你撑大大i 提交于 2020-03-10 03:50:06
1 设置脚本可以访问的目录,一定限度上限制了PHP木马,比如 open_basedir=d:/usr/www 一般设置将php能打开的文件设置在指定的目录树中. 2 设置禁用的函数 disable_functions,在php.ini的safe_mode=off下,可以用这个。 在php.ini中,比如 disable_functions = php info,get_cfg_var 又或者 disable_functions= passthru,exec,shell_exec,system,fopen,mkdir,rmdir,chmod,unlink,dir ,fopen,fread,fclose,fwrite,file_exists ,closedir,is_dir,readdir.opendir ,fileperms.copy,unlink,delfile 但有的文件函数就用不了拉. 3 打开magic_quotes_gpc 默认是关闭的,打开的话,会自动转义. 如果关闭的话,就用addslashes()咯 4 网上很多防止注入的程序,比如 <?php /* PHP整站防注程序,需要在公共文件中reqire_once本文件 by 风尘浪子 QQ:156544632 http://156544632.cn */ // 判断 magic_quotes_gpc 状态 if (

《Fluent Python》- 03 字典和集合

帅比萌擦擦* 提交于 2020-03-09 11:54:23
字典这个数据结构活跃在所以Python程序背后,即便你没有直接用到它 泛映射类型 非抽象映射类型通常是不会继承抽象基类的。它们会直接对dict或者是collection.UserDict进行扩展。而抽象基类通常的作用是形式化的文档,它们还可以跟isinstance一起被用来判断某个数据是不是广义上的映射类型。 这里用isintance而不是type来检查,是因为这个参数有可能不是dict。 my_dict = {} print(isinstance(my_dict, abc.Mapping)) # True 标准库里的所有映射都是利用dict来实现的,英雌有个限制,只有可散列的数据类型才能用作这些映射里的键。 关于可散列:如果一个对象是可散列的,那么在这个对象的生命周期中,它的散列值是不变的,而且这个对象需要实现__hash__()方法。另外可散列对象还要有__eq__()方法,这样才能和其他键做比较。 关于Python中“Python里所有的不可变类型都是可散列的”这句话其实是不太准确的,比方说元祖,它本身是不可变的,但是内部元素却可能是可变的。 字典推导 自Python2.7以来,列表推导和生成器表达式的概念就移植到了字典上,从而有了字典推导。字典推导可以从任何以建值对作为元素的可迭代对象中构建出字典。 DIAL_CODES = [(86, 'China'), (91,

django模型的返回值 重写__str__() 或者重写__init__()

孤街浪徒 提交于 2020-03-09 10:00:49
  请看以下陈述片段:        定义模型实在定义模型Type时,设置该模型的返回值,当有外键指向模型Type时,模型Type会将返回值返回给外键,在模型中通过重写__str__函数可以设置模型的返回值:代码如下   class Type(models.Model):     id = models.AutoField(primary_key=20)     type_name = models.CharField(max_length=20)          def __str__(self):       return self.type_name   如果存在多个下拉框,而且每个下拉框的数据分别取同一个模型的不同字段,那么重写__str__函数可能不太行。遇到这种情况,可以在定义表单类时重写初始化函数__init__(),代码如下:   class ProductModelForm(forms.Form):     def __init__(self,*args,**kwargs):       super(ProductModelForm,self).__init__(*args,**kwargs)       type_obj = Type.objects.values('type_name)       choice_list = ([i+1, v['type

在C++中对仿函数的理解

喜夏-厌秋 提交于 2020-03-09 06:51:17
文章转自:https://blog.csdn.net/yuhan61659/article/details/81356051 先考虑一个简单的例子:假设有一个vector,你的任务是统计长度小于5的string的个数,如果使用count_if函数的话,你的代码可能长成这样: bool LengthIsLessThanFive ( const string & str ) { return str . length ( ) < 5 ; } int res = count_if ( vec . begin ( ) , vec . end ( ) , LengthIsLessThanFive ) ; 其中count_if函数的第三个参数是一个函数指针,返回一个bool类型的值。一般的,如果需要将特定的阈值长度也传入的话,我们可能将函数写成这样: bool LenthIsLessThan ( const string & str , int len ) { return str . length ( ) < len ; } 这个函数看起来比前面一个版本更具有一般性,但是他不能满足count_if函数的参数要求:count_if要求的是unary function(仅带有一个参数)作为它的最后一个参数。所以问题来了,怎么样找到以上两个函数的一个折中的解决方案呢?

jdk1.8新特性中比较常用的几个介绍

送分小仙女□ 提交于 2020-03-08 23:50:17
如果看完觉得对您有帮助到,麻烦关注一下,您的关注是我继续更新的动力。谢谢!! 函数式接口 Lambda表达式是如何在java的类型系统中表示的呢?每一个lambda表达式都对应一个类型,通常是接口类型。而“函数式接口”是指仅仅只包含一个抽象方法的接口,每一个该类型的lambda表达式都会被匹配到这个抽象方法。因为 默认方法 不算抽象方法,所以你也可以给你的函数式接口添加默认方法。 我们可以将lambda表达式当作任意只包含一个抽象方法的接口类型,确保你的接口一定达到这个要求,你只需要给你的接口添加 @FunctionalInterface 注解,编译器如果发现你标注了这个注解的接口有多于一个抽象方法的时候会报错的。 示例如下: @FunctionalInterfaceinterface Converter<F, T> { T convert(F from);}Converter<String, Integer> converter = (from) -> Integer.valueOf(from);Integer converted = converter.convert("123");System.out.println(converted); // 123 需要注意如果@FunctionalInterface如果没有指定,上面的代码也是对的。 译者注

ios学习记录 day10

微笑、不失礼 提交于 2020-03-08 15:03:46
1.指针 直接访问 //a = 20 间接访问 //通过地址访问内存内容 2.& 取地址 * 取内容 & 和 *配套使用 他俩正好相反 3.内存 栈区 从高向低分配 | 堆区 从低向高分配 1)、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2)、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3)、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的 全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另 一块区域。 - 程序结束后由系统释放。 4)、文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放 5)、程序代码区—存放函数体的二进制代码。 int a = 5; int b = 3; int c = 2; printf("%p\n%p\n%p\n",&a,&b,&c); 打印:0x7fff5fbff8b c 0x7fff5fbff8b 8 0x7fff5fbff8b 4 4.指针定义 类型 变量名 = 初值 int * p = NULL; //int * 是类型 NULL恒等于0 int a = 5; int * p = NULL;