⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 array-stuff

📁 android-w.song.android.widget
💻
字号:
# usage: reverse arraynamereverse(){	local -a R	local -i i	local rlen temp	# make r a copy of the array whose name is passed as an arg	eval R=\( \"\$\{$1\[@\]\}\" \)	# reverse R	rlen=${#R[@]}	for ((i=0; i < rlen/2; i++ ))	do		temp=${R[i]}		R[i]=${R[rlen-i-1]}		R[rlen-i-1]=$temp	done	# and assign R back to array whose name is passed as an arg	eval $1=\( \"\$\{R\[@\]\}\" \)}A=(1 2 3 4 5 6 7)echo "${A[@]}"reverse Aecho "${A[@]}"reverse Aecho "${A[@]}"# unset last element of Aalen=${#A[@]}unset A[$alen-1]echo "${A[@]}"# ashift -- like shift, but for arraysashift(){	local -a R	local n	case $# in	1)	n=1 ;;	2)	n=$2 ;;	*)	echo "$FUNCNAME: usage: $FUNCNAME array [count]" >&2		exit 2;;	esac	# make r a copy of the array whose name is passed as an arg	eval R=\( \"\$\{$1\[@\]\}\" \)	# shift R	R=( "${R[@]:$n}" )	# and assign R back to array whose name is passed as an arg	eval $1=\( \"\$\{R\[@\]\}\" \)}ashift A 2echo "${A[@]}"ashift Aecho "${A[@]}"ashift A 7echo "${A[@]}"# Sort the members of the array whose name is passed as the first non-option# arg.  If -u is the first arg, remove duplicate array members.array_sort(){	local -a R	local u	case "$1" in	-u)	u=-u ; shift ;;	esac	if [ $# -eq 0 ]; then		echo "array_sort: argument expected" >&2		return 1	fi	# make r a copy of the array whose name is passed as an arg	eval R=\( \"\$\{$1\[@\]\}\" \)	# sort R	R=( $( printf "%s\n" "${A[@]}" | sort $u) )	# and assign R back to array whose name is passed as an arg	eval $1=\( \"\$\{R\[@\]\}\" \)	return 0}A=(3 1 4 1 5 9 2 6 5 3 2)array_sort Aecho "${A[@]}"A=(3 1 4 1 5 9 2 6 5 3 2)array_sort -u Aecho "${A[@]}"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -