switch语句怎么用啊 具体
一般形式:
switch(表达式){
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default: 语句n+1;
}
意思是先计算表达式的值,再逐个和case 后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行default后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有case后的语句。
与if语句的不同:If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其他if语句;
而switch语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有case语句。在每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。
int a;
printf(“input integer number: “);
scanf(“%d“,&a);
switch (a){
case 1:printf(“Monday\n“); break;
case 2:printf(“Tuesday\n“); break;
case 3:printf(“Wednesday\n“); break;
case 4:printf(“Thursday\n“); break;
case 5:printf(“Friday\n“); break;
case 6:printf(“Saturday\n“); break;
case 7:printf(“Sunday\n“); break;
default:printf(“error\n“);
}
注意:
1.case后的常量表达式不能相同;
2. case后的语句可以有多个且不用花括号括起来;
3.case和default子句的先后顺序可以先后变动,default子句可以省略不用;
springboot application.properties 写多个配置文件怎么写
springboot application.properties 写多个配置文件的方法:
# 文件编码
banner.charset= UTF-8
# 文件位置
banner.location= classpath:banner.txt
# 日志配置
# 日志配置文件的位置。 例如对于Logback的`classpath:logback.xml`
logging.config=
# %wEx#记录异常时使用的转换字。
logging.exception-conversion-word=
# 日志文件名。 例如`myapp.log`
logging.file=
# 日志级别严重性映射。 例如`logging.level.org.springframework = DEBUG`
logging.level.*=
# 日志文件的位置。 例如`/ var / log
logging.path=
# 用于输出到控制台的Appender模式。 只支持默认的logback设置。
logging.pattern.console=
# 用于输出到文件的Appender模式。 只支持默认的logback设置。
logging.pattern.file=
# 日志级别的Appender模式(默认%5p)。 只支持默认的logback设置。
logging.pattern.level=
#注册日志记录系统的初始化挂钩。
logging.register-shutdown-hook= false
# AOP 切面
# 添加@EnableAspectJAutoProxy。
spring.aop.auto= true
# 是否要创建基于子类(CGLIB)的代理(true),而不是基于标准的基于Java接口的代理(false)。
spring.aop.proxy-target-class= false
# 应用程序上下文初始化器
# 应用指标。
spring.application.index=
# 应用程序名称。
spring.application.name=
# 国际化(消息源自动配置)
#
spring.messages.basename= messages
# 以逗号分隔的基础名称列表,每个都在ResourceBundle约定之后。
# 加载的资源束文件缓存到期,以秒为单位。 设置为-1时,软件包将永久缓存。
spring.messages.cache-seconds= -1
# 消息编码。
spring.messages.encoding= UTF-8
# 设置是否返回到系统区域设置,如果没有找到特定语言环境的文件。
spring.messages.fallback-to-system-locale= true
# REDIS (Redis 配置)
# 连接工厂使用的数据库索引。
spring.redis.database= 0
# Redis服务器主机。
spring.redis.host= localhost
# 登录redis服务器的密码。
spring.redis.password=
# 给定时间池可以分配的最大连接数。 使用负值为无限制。
spring.redis.pool.max-active= 8
# 池中“空闲”连接的最大数量。 使用负值来表示无限数量的空闲连接。
spring.redis.pool.max-idle= 8
# 连接分配在池耗尽之前在抛出异常之前应阻止的最大时间量(以毫秒为单位)。 使用负值无限期地阻止。
spring.redis.pool.max-wait= -1
# 定义池中维护的最小空闲连接数。 此设置只有在正值时才有效果。
spring.redis.pool.min-idle= 0
# redis服务器端口
spring.redis.port= 6379
# redis服务器名称
spring.redis.sentinel.master=
# spring.redis.sentinel.nodes=
# 连接超时(毫秒)。
spring.redis.timeout= 0
# 管理员 (Spring应用程序管理员JMX自动配置)
# 开启应用管理功能。
spring.application.admin.enabled= false
# JMX应用程序名称MBean。
spring.application.admin.jmx-name= org.springframework.boot:type= Admin,name= SpringApplication
# 自动配置
# 自动配置类排除。
spring.autoconfigure.exclude=
# spring 核心配置
# 跳过搜索BeanInfo类。
spring.beaninfo.ignore= true
# spring 缓存配置
# 由底层缓存管理器支持的要创建的缓存名称的逗号分隔列表。
spring.cache.cache-names=
# 用于初始化EhCache的配置文件的位置。
spring.cache.ehcache.config=
# 用于创建缓存的规范。 检查CacheBuilderSpec有关规格格式的更多细节。
spring.cache.guava.spec=
# 用于初始化Hazelcast的配置文件的位置。
spring.cache.hazelcast.config=
# 用于初始化Infinispan的配置文件的位置。
spring.cache.infinispan.config=
# 用于初始化缓存管理器的配置文件的位置。
spring.cache.jcache.config=
# 用于检索符合JSR-107的缓存管理器的CachingProvider实现的完全限定名称。 只有在类路径上有多个JSR-107实现可用时才需要。
spring.cache.jcache.provider=
# 缓存类型,默认情况下根据环境自动检测。
spring.cache.type=
# spring配置 (配置文件应用侦听器)
# 配置文件位置。
spring.config.location=
# 配置文件名。
spring.config.name= application
Springboot的多配置文件是指:系统中存在多个配置文件,在不同的运行环境使用不同的配置文件即可。
启动项目的方法一般有两种 :
1、 运行RootApplication中的main方法。
2、 使用命令:mvn spring-boot:run
这两方法默认都是使用application.properties中的配置信息,如果有指spring.profiles.active则使用指定的配置信息,这种方式一般用在产品运行时,在开发和测试的时候则需要指定配置文件。-witch
ACM有那么重要吗
膜拜一下一楼的牛。
。。。其实没有那么严重吧。我觉得主要是练习啊,学习算法啊。acm是一个比较正规的比赛吧!这样的比赛,可以锻炼编程能力,所以单位也会以此为一个依据吧。
其实类似的比赛也有很多啊,比如topcoder,中国有百度之星,有道难题,我觉得都会对工作有帮助的~~~
-c