scala简单的功能实现~weekone
以下是scala简单的入门题~
1、⼀个数字如果为正数,则它的signum为1;如果是负数,怎么signum为-1;如果是0,则signum 为0.编写⼀个函数来计算这个值。
object Test {
def main(args : Array[String]){
val a= 1
var signum =if(a>0) 1 else if(a<0) -1 else 0
println(signum)
}
}
2、针对下列Java循环编写Scala版本 for(int i=10; i>=0;i- -) System.out.println(i)
object Test {
def main(args : Array[String]){
for(i<- Range(10,-1,-1))
println(i)
}
}
3、编写⼀个过程countdown(n : Int), 打印从n-1到0的数字.(n > 1)
object Test {
//编写⼀个过程countdown(n : Int), 打印从n-1到0的数字.(n > 1)
def countdown(n:Int){
for(i <- Range(n-1,-1,-1))println(i)
}
def main(args : Array[String]){
countdown(5)
}
}
4、编写⼀个循环,讲整数数组中相邻的元素置换。如,Array(1,2,3,4,5)经过置换变为 Array(2,1,4,3,5)
object Test {
//编写⼀个循环,讲整数数组中相邻的元素置换。如,Array(1,2,3,4,5)经过置换变为 Array(2,3,4,5,1)
def swap(array:Array[Int]){
for(idx <- 0 until (if(array.length%2==0) array.length else array.length-1)){
val temp=array(idx)
array(idx)=array(idx+1)
array(idx+1)=temp
}
for(i <- 0 until array.length)
print(array(i))
}
def main(args : Array[String]){
val a=Array(1,2,3,4,5)
swap(a)
}
}
5、任意给定⼀个语句(⾃定义,词与词之间以空格好分隔),统计出每个词出现的次数。
object Test {
//任意给定⼀个语句(⾃定义,词与词之间以空格好分隔),统计出每个词出现的次数。
def wordcount(content : String) : Map[String, Int]= {
val counts = scala.collection.mutable.Map[String, Int]()
for(word <- content.split(' ')){
if (counts.contains(word))
counts(word) = counts(word) + 1
else
counts += (word -> 1)
}
print(counts)
counts.toMap
}
def main(args : Array[String]){
val words="a b c d e f a b c"
wordcount(words)
}
}
scala简单的功能实现~weekone的更多相关文章
- scala简单的功能实现~weektwo
1.编写⼀个BankAccount类,假如deposit和withdraw⽅法,和⼀个只读的balance属性. //存款(deposit)和取款()函数 class BankAccount exte ...
- System.DateUtils 1. DateOf、TimeOf 简单修饰功能
编译版本:Delphi XE7 { Simple trimming functions } // 简单修饰功能 function DateOf(const AValue: TDateTime): TD ...
- python3实现简单爬虫功能
本文参考虫师python2实现简单爬虫功能,并增加自己的感悟. #coding=utf-8 import re import urllib.request def getHtml(url): page ...
- 插件介绍 :cropper是一款使用简单且功能强大的图片剪裁jQuery插件。
简要教程 cropper是一款使用简单且功能强大的图片剪裁jQuery插件.该图片剪裁插件支持图片放大缩小,支持鼠标滚轮操作,支持图片旋转,支持触摸屏设备,支持canvas,并且支持跨浏览器使用. c ...
- SharePoint 2013 "通知我"简单的功能
简单的功能 "通知我"内部列表或文档库中的主要项目.加入/删除/修改等操作,用户的E- mail通知设定功能:设置列表或文档库通知的能力,有可能设置通知为一个单一的项目.这是Sha ...
- Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件!
源:Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件! 2014年02月06日发布控件的重要更新版本: Victor 串口控件 1.5.0.2 版本 (包 ...
- 基于django的自定义简单session功能
基于django的自定义简单session功能 简单思路: 1.建立自定义session数据库 2.登入时将用户名和密码存入session库 3.将自定义的随机session_id写入cookie中 ...
- Unity3D使用NGUI实现简单背包功能
前话 在许多类型游戏中我们经常会使用到背包,利用背包来设置相应角色属性,多了背包也会让游戏增色拓展不少. 那在Unity3D游戏开发中该如何编写背包系统呢?因为有高人开发了NGUI插件,因此我们进行简 ...
- DataGridView使用BindingNavigator实现简单分页功能
接上一篇<DataGridView使用自定义控件实现简单分页功能>,本篇使用BindingNavigator来实现简单分页功能.其实也只是借用了一个BindingNavigator空壳, ...
随机推荐
- 《Linux就该这么学》培训笔记_ch13_使用Bind提供域名解析服务
<Linux就该这么学>培训笔记_ch13_使用Bind提供域名解析服务 文章最后会post上书本的笔记照片. 文章主要内容: DNS域名解析服务 安装并部署Bind服务程序 部署从服务器 ...
- 快速排序详解(C语言/python)
快速排序详解 介绍: 快速排序于C. A. R. Hoare在1960年提出,是针对冒泡排序的一种改进.它每一次将需要排序的部分划分为俩个独立的部分,其中一个部分的数比的数都小.然后再按照这个方法对这 ...
- mapreduce 函数入门 三
一.mapreduce多job串联 1.需求 一个稍复杂点的处理逻辑往往需要多个 mapreduce 程序串联处理,多 job 的串联可以借助 mapreduce 框架的 JobControl 实现 ...
- java -- eclipse运行javaweb 项目
这个是和上一个放在一块的 创建javaweb项目,要是想要创建maven项目,java项目都可以,我要和tomcat放在一块所以 就创建javaweb项目 创建项目起一个有意义的项目名 选择一个 ...
- Lua table concat
[1]table concat 简介 使用方式: table.concat(table, sep, start, end) 作用简介: concat是concatenate(连锁.连接)的缩写. ta ...
- day60——单表操作补充(批量插入、查询、表结构)
day60 批量插入(bulk_create) # bulk_create obj_list = [] for i in range(20): obj = models.Book( title=f'金 ...
- Go语言【数据结构】切片
切片 简介 简单地说,切片就是一种简化版的动态数组.Go 数组的长度不可改变,而切片长度是不固定,切片的长度自然也就不能是类型的组成部分了.数组虽然有适用它们的地方,但是数组的类型和操作都不够灵活,因 ...
- C# zip压缩 Ionic.Zip.dll
#region Ionic.Zip压缩文件 //压缩方法一 public void ExeCompOne() { string FileName = DateTime.Now.ToString(&qu ...
- asp.net 报错 SAP 报错 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
“/”应用程序中的服务器错误. 试图加载格式不正确的程序. (异常来自 HRESULT:0x8007000B) 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该 ...
- 爬虫--selenium之 chromedriver与chrome版本映射表(最新至v2.46版本chromedriver)
本文主要整理了selenium的chromedriver与chrome版本映射表,并且持续更新中..... 1.selenium之 chromedriver与chrome版本映射表(最新至v2.46版 ...