您的位置:首页 > 编程语言 > Ruby

Ruby Python Java C C++ 数组使用方法对比

2017-01-13 21:59 891 查看
Ruby可以用 length ,size 这些关键字获得数组的大小

这里Ruby ,python, JAVA 都使用了类的方法

有静态方法,也有动态方法

首先是Ruby
#!/usr/bin/ruby

class Pro

def initialize(example)
@current_num = example
end
def get_d
arr = Array.new(@current_num){|e| e = e * 1 }
tmp = 1
for i in 0 .. arr.length-1

if arr[i] - tmp > 4
puts "#{arr[i]}"
tmp = arr[i]
end
end
end

def self.put_Each()
sum = 0
for i in 0 .. 10
puts i
sum += i
end
puts sum
end
end

Obj1 = Pro.new(17)
Obj1.get_d

Pro.put_Each


然后是Python, 在#分割线之后的用的是单独的递归函数
#!/usr/bin/python
# -*- coding: UTF-8 -*-

class Pro:

def __init__(self, example):
self.current_num = example

def get_d(self):
arr = list(range(0, self.current_num))
tmp = 1
for i in arr:
if i - tmp > 4:
print i
tmp = i

Obj1 = Pro(17)
Obj1.get_d()

#################################################

def get_distance(A):
for i in A[1:]:
if i - A[0] > 4:
t = A.index(i)
print i
return get_distance(A[t:])

a = list(range(1, 17))
get_distance(a)


然后是C
#include "stdio.h"

int main(void) {
int i, arr[16];
int tmp = 1;

for(i = 0; i < 16; i++){
arr[i] = i + 1;
}

for(i = 0; i < 16; i++){
if(arr[i] - tmp > 4 ){
printf("%d\n", arr[i]);
tmp = arr[i];
}
}

return 0;
}


接下来是 C++
#include<iostream>

using namespace std;

void get_d(int arr[], int n){
int i, *p = arr;
int tmp = 1;
for (p=arr; p<arr+16; p++){
if(*p - tmp > n){
cout << *p << endl;
tmp = *p;
}
}
}
int main(){
void get_d(int arr[], int n);
int a[16],*p=a,i;
for(i=0;i<16;i++){
p[i] = i+1;
}
get_d(a, 4);
return 0;

}


最后是Java
class Pro {
public void get_d(int example) {
int[] arr = new int[example];

int tmp = 1;

for (int i = 0; i < example; i++) {
arr[i] = i + 1;
}

for (int i = 0; i < arr.length; i++){
if (arr[i] - tmp > 4) {
System.out.println(arr[i]);
tmp = arr[i];
}
}
}
}
public class Test{
public static void main(String[] args){
Pro Obj1 = new Pro();

Obj1.get_d(16);

}
}


JAVA 给原始数组赋值的语句直接写在 Pro 类的 get_d方法中了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  对比 数组 JAVA Ruby Pyth